質問: "ABCDE"; とすると、sizeof(ary)の値は6になりました。
回答: `char ary[5] = "ABCDE";` とした場合には単純に `'\0'` を除いた五文字の配列が作られます。 言語仕様 (JISX3010:2003 の 6.7.8) によれば、 > > 文字型の配列は、単純文字列リテラルで初期化してもよい。 それを波括弧で囲んでもよい。 単純文字列リテラルの文字 (空きがある場合又は配列の大きさが分からない場合、終端なる文字も含めて。) がその配列の要素を前から順に初期化する。 > > > とあり、配列の宣言で大きさが示されないときや、配列の大きさとして指定した数が文字列の文字数より大きい場合には終端文字も含めることになっています。