エラー C4226を解消するには?

解決


じゅんや  2003-05-24 01:25:06  No: 51467

[C4226 非標準の拡張機能を使用しています。"far"は互換性のために残されているキーワードです]というエラーが発生しているのですが、解決方法がわかりません。

sqlproto.hというヘッダーファイルをincludeしようとすると出ます。
なぜでしょうか?


YuO  2003-05-24 01:38:49  No: 51468

Windows 3.1やMS-DOS時代にはfar/near/hugeというものがありました。
#細かいことは8086等の説明を探して下さい。

#pragma warning(disable: 4226)
とやって無視するか,
#define far
としてfar自体を消し去るとよいかと。


じゅんや  2003-05-24 03:19:21  No: 51469

>#pragma warning(disable: 4226)
>とやって無視するか,

これをどこに書けばいいんですか?

すいません。素人なもので。。


じゅんや  2003-05-24 03:44:24  No: 51470

C4226については解消できました!
ありがとうございました!

が、さらにwarning:C4047とC4024が発生しております。

warningだから無視してもいいかなと一瞬思ってしまいましたが、
かなり多くこのエラーが出ているのでそうもいかず戸惑ってます。

戻ってしまいますけど、sqlproto.hをincludeしようとそこまでのパスを通せば
C4226エラーが出る(同時にC4047とC4024も出ます)し、パスを通さなければインクルードファイルがオープンできない(当然(笑))し、板ばさみです。


ボロパル  2003-05-24 04:13:12  No: 51471

お困りのようなので…。

> が、さらにwarning:C4047とC4024が発生しております。

  この情報だけだといまいちはずしてしまいそうな気配が濃厚ですが、とりあえず
VisualStudioのヘルプに「C4047」とか「C4024」とキーワードを入れると、原因が
細かく表示されるので、ご覧になってみてください。

  ちなみに警告の内容からすると、ポインタ周りと、関数に渡す引数周りに原因あ
りそうなので、その辺を考慮して調べられると良いかも?


YuO  2003-05-24 05:08:06  No: 51472

そもそも,sqlproto.hはWin32用のヘッダファイルですか?
#farなんてのがついている時点で疑問を感じます。


瀬戸っぷ  2003-05-24 08:59:03  No: 51473

http://n76cd-01p05.ppp11.odn.ad.jp/cgi.cgi?08408

同じ人??


じゅんや  2003-05-26 22:32:41  No: 51474

ごめんなさい。同じ人です。


じゅんや  2003-05-31 01:59:01  No: 51475

解決しました。

結論としては、"far"を消して、

#ifdef  __cplusplus
extern "C" {
#endif

として宣言するとできました。

みなさんありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加