为什么可以循环遍历此字符串,直到NULL终结符,如果我没有用一个字符串结束字符串或给它一个额外的元素以自动终止一个?
char buf[5];
buf[0] = 'H';
buf[1] = 'e';
buf[2] = 'l';
buf[3] = 'l';
buf[4] = 'o';
char *p = buf;
for (p = buf; *p != '\0'; p++)
ch_printf(ch, "%c\n", *p);
我是C的新手,试图自学,所以请原谅我的愚蠢:)
感谢您的帮助。
答案 0 :(得分:0)
因为您正在尝试访问未分配的内存,因此[5]的结果为空