C文字列の配列にメモリを割り当てようとしています。文字列が文字内に収まることは保証できますMAX_STRING_LENGTH
が、コンパイル時に配列に含まれる文字列の数はわかりません(これは動的に計算されます)。コードを使用すると...
char *strings[MAX_STRING_LENGTH] = malloc( sizeof(char *) * numstrings );
...コンパイラは、これが無効な初期化子であると文句を言います。コードを使用すると...
char strings[MAX_STRING_LENGTH][] = malloc( sizeof(char *) * numstrings );
...コンパイラは不完全な要素型について文句を言います。ここで何が間違っているのでしょうか。また、この配列にメモリを割り当てるにはどうすればよいですか。