【初心者お断り】ガチ規格準拠C専用スレ Part133at TECH
【初心者お断り】ガチ規格準拠C専用スレ Part133 - 暇つぶし2ch139:デフォルトの名無しさん
08/04/23 22:31:34
みんなあんまり適当な事言うなよ?

>>133
あまり知られていないが、これは 「仮定義(tentative definition)」 という仕様。
extern も static もついていない、初期化を伴わないグローバル変数の宣言は 「仮定義」 と見なされる。
対する、extern も static もついていない、初期化を伴うグローバル変数の宣言は 「外部定義(external definition)」 と見なされる。

外部定義は必ず実体定義を伴う。
外部定義が複数あると、二重定義となりエラーとなる。

しかし、仮定義は他に実体定義がなければ実体を定義し、
他に実体定義があれば実体定義を伴わない単なる宣言と見なされる。
複数の仮定義を書いた場合、実体は1つだけ定義され、それらの仮定義は実体を共有する。

つまり、>>133 は仕様。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch