一个代码了解字符数组和字符的初始化,整形数组和整形的初始化未初始化的默认值

大清早就开始写了,结果没保存,前面有很多话要说,现在就只能看图了;


​#define _CRT_SECURE_NO_WARNINGS 1
#include
#include

char string0[] = {'b','i','t'};//全局数组长度为4,strlen取到\0之前的三个
char c0;
int arr0[] = { 1,2,3,4 };//,长度为4,c0[4]之后未初始化为0
int a0;

int main()
{
	char c1; 
	int a1;
	char string1[] = { 'b','i','t' };//局部字符数组a1[3]未初始化为0Xcccccccc
	//char string2[1] = {};error
	int arr1[] = { 1,2,3,4 };//c1[4]未初始化的为随机值
	//int arr2[] = {};error

	//字符和字符数组;
	printf("%s\n",string0);//全局变量;输出bit
	printf("%s\n", string1);	//

	printf("%c\n",string0[3]);//全局字符数组变量元素未初始化;输出界面不显示任何内容,应该是'\0'
	printf("%c\n", string1[3]);//局部字符数组变量;未初始化输出了“?”

	printf("%c\n", c0); //全局字符变量未初始化;输出界面不显示任何内容,应该是'\0'
	//printf("%c\n",c1);//不允许使用未定义的char 和int

	//整形和整形数组
	printf("%d\n",arr0[4]);//全局整形数组变量;未初始化输出0
	printf("%d\n",arr1[4]);//局部输出垃圾值

	printf("%d\n", a0);//全局整形变量;未初始化输出0
	//printf("%d\n", a1);//不允许使用未定义的char 和int;

	system("pause");
	return 0;
}

一个代码了解字符数组和字符的初始化,整形数组和整形的初始化未初始化的默认值_第1张图片

你可能感兴趣的:(一个代码了解字符数组和字符的初始化,整形数组和整形的初始化未初始化的默认值)