int array[0];
コードで長さゼロの配列を定義すると、実際にはどうなりますか?GCCはまったく文句を言いません。
サンプルプログラム
#include <stdio.h>
int main() {
int arr[0];
return 0;
}
明確化
私は実際に、Darhazerのコメントの可変長のように指されるのではなく、このように初期化された長さゼロの配列が最適化されているかどうかを把握しようとしています。
これは、一部のコードを実際にリリースする必要があるため、SIZE
がとして定義されているケースを処理する必要があるかどうかを判断しようとし0
ています。int array[SIZE];
私は実際にGCCが文句を言わないことに驚き、それが私の質問につながりました。私が受け取った回答から、警告がないのは、新しい[]構文で更新されていない古いコードをサポートしていることが主な原因であると思います。
私は主にエラーについて疑問に思っていたので、Lundinの答えに正しいタグを付けています(Nawazの答えが最初でしたが、完全ではありませんでした)。 tまさに私が探していたもの。
[]
Pythonまたは""
Cの目的は何ですか?場合によっては、配列を必要とする関数またはマクロを持っているのに、データを入力できないことがあります。