问题描述
- 关于字符数组最后一个元素的小问题
-
#include
main()
{
char a[5];
scanf("%c%c",&a[1],&a[2]);
a[3]='m';
printf("%cn",a[4]);
}
运行结果:
ab
?
请按任意键继续. . .请问最后一位难道不应该是随机值吗?为什么输出了“?”
解决方案
? 应该是不能识别的字符,例如纯英文下输出汉字
可能是凑巧是? 也可能是替换符号,
凡是不能识别的都用?代替
解决方案二:
是随机的,恰好是'?'
解决方案三:
不在调试情况下运行,多运行几次就会发现有时是不一样的结果。
解决方案四:
这个怎么是随机呢?,没给a〔4〕赋过值,那么这个元素所在的地址中原本是什么值就输出什么吧。
解决方案五:
反正就是个未初始化的值,所以都有可能
时间: 2024-11-01 17:15:10