以下のような配列を作ったのですが、エラーが出ます。
「invalid initializer on array」等です。
char Ablock_name_table[][3] = {
{"yamada", "", ""},
{"yamada", "yamada", ""}
};
おかしなところをご指摘ください。
2次元配列のエラーご指摘お願いします
Re: 2次元配列のエラーご指摘お願いします
2次元配列を3次元のデータで初期化しようとしています。
文字列はcharの配列です。
char Ablock_name_table[][3][N] = { … /* Nは文字列を格納するのに十分な大きさの値 */
か
const char *Ablock_name_table[][3] = { …
の
どちらかが期待されているものではないかと想像します。
文字列はcharの配列です。
char Ablock_name_table[][3][N] = { … /* Nは文字列を格納するのに十分な大きさの値 */
か
const char *Ablock_name_table[][3] = { …
の
どちらかが期待されているものではないかと想像します。
Re: 2次元配列のエラーご指摘お願いします
[]で確保した領域は初期化された文字列を書きかえることができます。haga さんが書きました:[]はややこしいので
文字列の配列を扱うときは*を使うべきだと思います。
*で文字列リテラルを差しているときは(基本的に)書きかえることができません。
違いがあるので、きちんと使い分けるべきかと思います。