0

对于下一个代码片段:

char words[10][9] = {
"Hello",
"Good-bye"
};

该表达式words[2][4]会给我字符'o',但我不明白为什么。

任何人都可以解释这种行为吗?

4

1 回答 1

1

“部分”初始化之后,所有“未初始化”的元素都被有效地初始化为0.

所以你的元素应该有一个0(或'\0')的值。

如果没有,还有其他事情发生,您没有向我们展示。

在 C 中没有部分初始化:要么所有元素都被初始化(可能为 0),要么没有元素被初始化。

请参阅http://ideone.com/JDv86whttp://ideone.com/j6BIRP

于 2013-01-18T21:16:09.643 回答