[解決済み] C - フィールドに不完全な型がある [重複] 。
2022-02-12 16:32:15
質問内容
下の表現では
struct Cat{
char *name;
struct Cat mother;
struct Cat *children;
};
コンパイラは、2番目のフィールドに対して以下のエラーを出しますが、3番目のフィールドは出ません。
error: field ‘mother’ has incomplete type
struct Cat mother;
^
このエラーを理解するにはどうしたらよいですか?
どのように解決するのですか?
このエラーは、メンバーを
struct
の型はまだ完全に定義されていないので、コンパイラはオブジェクトのレイアウトを決定するために、そのサイズを知ることができません。
このケースでは
struct Cat
は、それ自身の完全なオブジェクトをメンバーとして保持している(つまり
mother
フィールド)。このような型定義における無限再帰はもちろん不可能である。
とはいえ、構造体はそれ自身の他のインスタンスへのポインタを含むことができます。そこで、定義を以下のように変更すると、有効な
struct
:
struct Cat{
char *name;
struct Cat *mother;
struct Cat *children;
};
関連
-
[解決済み】Cコンパイルエラー。"変数サイズのオブジェクトが初期化されていない可能性がある"
-
[解決済み】Valgrind - strcpyのサイズ1の無効な書き込み
-
[解決済み】Cコンパイルエラーです。Idは1終了ステータスを返した
-
[解決済み】エラー:'for'ループの初期宣言はC99モードでしかできない【重複
-
[解決済み] テスト
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み】C言語でpow( )への未定義参照、math.hを含むにもかかわらず【重複】。
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] 自己言及的な構造体定義?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Cコンパイルエラーです。Idは1終了ステータスを返した
-
[解決済み] Connect: ソケット以外でのソケット操作
-
[解決済み】GCC Cコードで静的宣言が非静的宣言に続くことを解決するには?
-
[解決済み】cudamalloc()の使用。) なぜダブルポインタなのか?
-
[解決済み】EAGAINとはどういう意味ですか?
-
[解決済み】サイズ8の無効な読み取り - Valgrind + C
-
[解決済み】fgetsによるセグメンテーションフォールト(コアダンプ) - と思う。
-
[解決済み】LinuxのI_PUSHに相当するもの
-
[解決済み】警告:式の結果が未使用の場合
-
[解決済み】execvp: バッドアドレスエラー