K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>bcc32ですが、 >> >> extern void piyo(int a); >> >>と書いていたのを、 >> >> extern int piyo(int a); > >一応、VC++ 6.0(SP6)でテストしてみました。 > >--a.c-- >void hoge1 (void); > >void hoge1(void) >{ > extern int piyo(int a); > piyo(1); >} > >void hoge2(void) >{ > piyo(2); >} > >--b.c-- >int piyo (int a) >{ > return a; >} > >c:\cppsrc\a\a.c(11) : warning C4013: 関数 'piyo' は定義されていません。int 型の値を返す外部関数と見なします。 > >となりました。 > >しかし、 > >>a)hoge1()の中のpiyoの宣言はhoge1()の中で完結していて、 > >なのに、既存の宣言(hoge1の関数ブロック内の宣言)との整合性がチェックされているとは…。 > >>あまり関係ありませんが、コンパイラの警告メッセージの翻訳チームは規格書を理解して >>細心の注意を払って訳しているのか、かなり疑問。 >>宣言と定義は用語の意味が違うのですが、どう見ても混同していると思われます。 > >同感です。 >私もコンパイラの警告メッセージで理解に苦しむ時があります。 >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!