C语言数组初始化的区别

C语言数组不同初始化方式的区别

char ch[] = "0";
char ch[] = { 0 };

"0"是个字符串,字符串以\0结尾,所以它长度其实是2
而{0}只有1个元素

第一个创建了2个元素的数组,而第二个只有一个
第一个数组两个元素分别是数字字符'0',和字符串结束符'\0'
第二个数组唯一一个元素是字符串结束符'\0'