[C4226 非標準の拡張機能を使用しています。"far"は互換性のために残されているキーワードです]というエラーが発生しているのですが、解決方法がわかりません。
sqlproto.hというヘッダーファイルをincludeしようとすると出ます。
なぜでしょうか?
Windows 3.1やMS-DOS時代にはfar/near/hugeというものがありました。
#細かいことは8086等の説明を探して下さい。
#pragma warning(disable: 4226)
とやって無視するか,
#define far
としてfar自体を消し去るとよいかと。
>#pragma warning(disable: 4226)
>とやって無視するか,
これをどこに書けばいいんですか?
すいません。素人なもので。。
C4226については解消できました!
ありがとうございました!
が、さらにwarning:C4047とC4024が発生しております。
warningだから無視してもいいかなと一瞬思ってしまいましたが、
かなり多くこのエラーが出ているのでそうもいかず戸惑ってます。
戻ってしまいますけど、sqlproto.hをincludeしようとそこまでのパスを通せば
C4226エラーが出る(同時にC4047とC4024も出ます)し、パスを通さなければインクルードファイルがオープンできない(当然(笑))し、板ばさみです。
お困りのようなので…。
> が、さらにwarning:C4047とC4024が発生しております。
この情報だけだといまいちはずしてしまいそうな気配が濃厚ですが、とりあえず
VisualStudioのヘルプに「C4047」とか「C4024」とキーワードを入れると、原因が
細かく表示されるので、ご覧になってみてください。
ちなみに警告の内容からすると、ポインタ周りと、関数に渡す引数周りに原因あ
りそうなので、その辺を考慮して調べられると良いかも?
そもそも,sqlproto.hはWin32用のヘッダファイルですか?
#farなんてのがついている時点で疑問を感じます。
http://n76cd-01p05.ppp11.odn.ad.jp/cgi.cgi?08408
同じ人??
ごめんなさい。同じ人です。
編集 削除解決しました。
結論としては、"far"を消して、
#ifdef __cplusplus
extern "C" {
#endif
として宣言するとできました。
みなさんありがとうございました。