[解決済み] 不完全な型へのポインタの参照解除
2022-02-06 18:54:28
質問
これに関する質問を多く見かけますが、具体的なコードを書かずに違う質問をさせていただきます。 の方法はあるのでしょうか? 簡単に は、何が原因で型が不完全なのかを判断しているのでしょうか? 私の場合、他の人のコードを使っているので、ヘッダーが正しくないと完全に確信していますが、(コンピュータは人間の目よりもずっと速く、うまくこのようなことを行うので)コンパイラに、"ちょっとあなた を考える 34行目にタイプXがありますが、これは実際には 行方不明 ." エラー自体は代入した時にしか表示されないので、あまり参考になりません。
解決方法は?
先日、以下のような指定で不完全な型をうっかり使ってしまったという質問を見かけました。
struct a {
int q;
};
struct A *x;
x->q = 3;
コンパイラは
struct A
は構造体であるにもかかわらず
A
のおかげで、まったく未定義です。
struct
というキーワードがあります。
それはC++での話であり、そのような使い方は
struct
は非典型的です(そして、足撃ちにつながる可能性があることが判明しました)。C言語では
typedef struct a {
...
} a;
とすると
a
を型名として使用し
struct
を追加しました。これにより、コンパイラは、名前を間違えたりヘッダを忘れたりした場合、不完全な型ではなく、未定義の識別子のエラーを後で出すようになります。
関連
-
[解決済み】エラー:cの入力の最後に期待される宣言またはステートメント
-
[解決済み] Connect: ソケット以外でのソケット操作
-
[解決済み] (.text+0x20): `main'への未定義の参照と関数への未定義の参照
-
[解決済み] strtokのセグメンテーションフォールト
-
[解決済み】式は、単純なポインタ演算を使用して完全なオブジェクト型へのポインタでなければなりません【重複】。
-
[解決済み】メモリー・クロバリング・エラー
-
[解決済み】C 未知の型名「my_structure」。
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】変数の警告が設定されているが使用されていない
-
[解決済み】組み込み関数「malloc」の暗黙の宣言の非互換性
-
[解決済み】ISO C90では、C言語での宣言とコードの混在が禁止されています。
-
[解決済み】GCC Cコードで静的宣言が非静的宣言に続くことを解決するには?
-
[解決済み】Cygwin - Makefile-error: ターゲット `main.o' のレシピに失敗しました。
-
[解決済み] struct has no member named
-
[解決済み】C言語で多重定義を防ぐには?
-
[解決済み】sizeof float (3.0) vs (3.0f)
-
[解決済み】malloc():メモリ破壊
-
[解決済み】未定義参照 makefile が間違っているのかも?