次のコード スニペットの場合:
char words[10][9] = {
"Hello",
"Good-bye"
};
式words[2][4]
は私に文字を与えますが、その'o'
理由はわかりません。
誰でもこの動作を説明できますか?
「部分的な」初期化の後、すべての「初期化されていない」要素は で効果的に初期化され0
ます。
したがって、要素には0
(または'\0'
) の値が必要です。
そうでない場合は、あなたが私たちに見せていない何か他のことが起こっています.
C では、部分的な初期化はありません。すべての要素が (おそらく 0 に) 初期化されるか、要素が初期化されません。
http://ideone.com/JDv86wまたはhttp://ideone.com/j6BIRPを参照してください。