C & C++ FAQ
目次
C
C++
宣言char s[4]="ABC";がコンパイルエラーとなるのですが。
標準C以前の古いC言語では、自動記憶域期間をもつ配列の初期化を行うことができませんでした。したがって、関数内での
char s[4] = "ABC";
という宣言は、エラーとなっていました。もし、お使いの処理系が、上記の宣言がエラーとなるのであれば、標準Cに対応していないということなります。
なお、プログラムの意味は変わってしまいますが、
static char s[4] = "ABC";
と静的記憶域期間を与えることによって、コンパイルエラーを回避することができます。
戻る