我对数组初始化有疑问
之间有什么区别
char a [6] = {0};
和
char a [6] = {'0','0','0','0','0','0'};
编译器如何解释以上两个表达式?他们只是一样还是不一样?
'0'
是数字0的ASCII字符。其值为48。
该常数0
是零字节或空字节,也被写入'\0'
。
这四个是等效的:
char a[6] = {0};
char a[6] = {0, 0, 0, 0, 0, 0};
char a[6] = {'\0', '\0', '\0', '\0', '\0', '\0'};
char a[6] = "\0\0\0\0\0"; // sixth null byte added automatically by the compiler
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句