[求助]输出与实际情况不符是怎么回事??
各位高手:我是c语言的初学者,小弟现在有个问题请教!!以下程序
main()
{
char str[10],c='a';
int i=0;
for(;i<5;i++)
str[i]=c++;
printf("%s",str);
}
理论上输出abcde,而我的电脑却输出abcde↑,上箭头为一个我不会打的字符!!
如果把定义改为 char c='a',str[10];
则输出abcde,这是为什么呢?
感谢 neverTheSame 的回复
经过深思熟虑和neverTheSame的指导,我认为2楼的答案是正确的!!!
现引用二楼的答案说,因为没有‘\0’,所以最后的结果不可知,出现abcde纯属偶然!!!
[此贴子已经被作者于2007-3-27 8:35:53编辑过]