[解決済み】C言語でexternキーワードを正しく使用する方法
2022-04-15 06:05:15
質問
私の質問は、ある関数を参照する際に
extern
というキーワードを C 言語で使用することができます。
実際にどのような場面で使うべきなのかがわからない。 私がプログラムを書いているとき、私が使うすべての関数は、私がインクルードしたヘッダーファイルを通して利用できるようになっています。 では、なぜ
extern
ヘッダーファイルで公開されていないものにアクセスできるようにするためでしょうか?
の方法を考えることができました。
extern
もしそうなら、訂正してください。
また、. あなたは
extern
ヘッダーファイルでキーワードを使用しないデフォルトの宣言である場合、何かをする必要がありますか?
どのように解決するのですか?
extern
は、リンク先を変更します。キーワードを使用すると、関数/変数がどこか他の場所で利用可能であると見なされ、その解決はリンカーに委ねられます。
という違いがあります。
extern
関数上と変数上の
について 変数 は、変数自体をインスタンス化しない、つまり、メモリを割り当てない。これは他のどこかで行われる必要がある。したがって、どこか他の場所から変数をインポートしたい場合には、これは重要なことです。
については
関数
これは、コンパイラにリンクがexternであることを伝えるだけです。これはデフォルトであるため(キーワード
static
を使えば、関数がexternリンクで束縛されていないことを示すことができます)明示的に使用する必要はありません。
関連
-
[解決済み】GCC Cコードで静的宣言が非静的宣言に続くことを解決するには?
-
[解決済み】警告。この関数ではXが初期化されていない状態で使用される可能性があります。
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] mallocの結果はキャストするのですか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] C++でextern "C "を使用した場合の効果は?
-
[解決済み] プログラム終了前にmallocの後にfreeをしないと本当に何が起こるのか?
-
[解決済み】C/C++の"-->"演算子とは何ですか?
-
[解決済み】externキーワードが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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー:'for'ループの初期宣言はC99モードでしかできない【重複
-
[解決済み】GCC Cコードで静的宣言が非静的宣言に続くことを解決するには?
-
[解決済み】デバッガgdbの使用時に不明な終了シグナルが発生する。
-
[解決済み】cudamalloc()の使用。) なぜダブルポインタなのか?
-
[解決済み] テスト
-
[解決済み】サイズ8の無効な読み取り - Valgrind + C
-
[解決済み】C言語で入力が整数型かどうかチェックする
-
[解決済み】MPI通信でMPI_Bcastを使用する場合
-
[解決済み] エラー: `itoa` はこのスコープで宣言されていません。
-
[解決済み】externキーワードがC関数に与える影響について