Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 初始化字符数组时,剩余的空间是零填充还是未初始化?_C - Fatal编程技术网

C 初始化字符数组时,剩余的空间是零填充还是未初始化?

C 初始化字符数组时,剩余的空间是零填充还是未初始化?,c,C,给定 这将初始化foo以包含'b'、'a'、'r',0。剩余的1020个字符是零初始化还是未初始化 我认为上面的内容与'char foo[1024]={'b','a','r','0'是一样的;与初始化聚合一样,未提及的任何成员都将初始化为零?如果数组/聚合以某种方式初始化[编辑:使用静态初始值设定项],则剩余未指定的条目将被置零,是。是,未初始化的数组元素将为零。例如: 如果初始值设定项提供的元素太少,则其余数组元素假定为0: char foo[1024] = "bar"; 相当于 int v

给定

这将初始化foo以包含'b'、'a'、'r',0。剩余的1020个字符是零初始化还是未初始化


我认为上面的内容与'char foo[1024]={'b','a','r','0'是一样的;与初始化聚合一样,未提及的任何成员都将初始化为零?

如果数组/聚合以某种方式初始化[编辑:使用静态初始值设定项],则剩余未指定的条目将被置零,是。

是,未初始化的数组元素将为零。例如:

如果初始值设定项提供的元素太少,则其余数组元素假定为0:

char foo[1024] = "bar";
相当于

int v5[8] = { 1 , 2 , 3 , 4 };
int v5[] = { 1 , 2 , 3 , 4 , 0 , 0 , 0 , 0 };