C および C での自動構造体と配列の部分初期化
GNU C リファレンス マニュアルには、構造体変数が初期化されていない場合、そのメンバーの値は不定です。ただし、標準では構造体または配列の部分的な初期化は定義されていません。
部分的な初期化の用語
「部分的な初期化」とは、すべてではなく一部の初期化子を提供することを指します。集合体 (配列または構造体)。
自動構造体と配列
C および C 標準では、自動構造体と配列の初期化に関する次の規則が指定されています。
部分初期化動作
部分初期化が標準で明示的に定義されていない場合でも、すべての主流のコンパイラは次に従います。動作:
例
次の Cコードは構造体を部分的に初期化します:
struct S { int a; char* b; int c; }; S s = {1, "asdf"};
この例では、s.a は次のように初期化されます。 1、s.b は "asdf" に初期化され、s.c は明示的に初期化されていないため、ゼロで初期化されます。
以上がC および C では、自動構造体と配列はどのように部分的に初期化されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。