有关C语言数组的问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 09:29:06
main()
{
char a[2][2]={'a','b','c','d'};
printf("%s",a[0]);
}
理论上应该输出"abcd",但我上机运行时的结果确实"abcd∑ →⊙⊙"
这是为什么呢?

"%s"是输出字符串,字符串是以'\0'结尾的,,由于你没有加'\0',系统找不到,于是就一直输出直到遇到'\0'为止

werewr

楼上说的很对

你要是想以字符串的形式输出,那就必须在你的数组最后定义一个'\0'

因为字符串的输出是遇到'\0'才停止的

我也支持他们的说法,,,,
要不你多运行两次试试,,,,看是不是相同的结果,,,