一句话包含两个意思
1.定义以256个字符型(char)为单位的组成数组str
2.str内的256个字符变量全部赋值为ASCII的0
解释下 ={'\0'}
数组中第一个为'\0',其他的全为0
'\0'其实就是0 同时可以表示字符串结束
也就是说数组内全是0
char a[4]={1,2,3} 与 char a[4]={1,2,3,0} 一个意思
char a[4]={0}与char a[4]={0,0,0,0}一个意思
char a[4]={'\0'}与char a[4]={0}一个意思
char a[4]={'\0'}与char a[4]={0,0,0,0}一个意思
char a[256]={'\0'}与char a[256]={0,0,0,0...................................0,0,0}一个意思
一个256个元素的字符数组,使其第一个元素是 '\0' ,剩下的元素全部是 0 (注意没有单引号)。
实际上这个可以解释为让这个数组所有元素都是0而已。
但是注意我刚刚特意拆开解释的原因是:
char str[256] = {'a'}; 并不是256个元素全部是 'a' ,而是第一个元素是 'a' 剩下的全部是 0 (注意这个也还是没有单引号,没有单引号的 0 等同于 '\0')
把数组初始化为空。