質問

私は、サイトを検索けど、私は本当に簡単な質問である。したがって、ここで探していた答えを見つけられませんでした。

私はそのような何かをしようとしています:

#ifdef _WIN32 || _WIN64
     #include <conio.h>
#endif

どのように私はそのようなことを行うことができますか?私はどちらかと窓の検出のために大丈夫だろうよう_WIN32は、両方の32ビットおよび64ビット・ウィンドウのために定義されていることを知っています。私は、プリプロセッサディレクティブでそのように論理演算子を使用できるかどうかで、より興味を持って、はい上記以来、動作しないか、場合ます。

私が取得gccでコンパイルします

  

警告:#ifdefのディレクティブの最後に余分なトークン、それは基本的には最初のマクロを取り、残りを無視します。

役に立ちましたか?

解決

試します:

#if defined(_WIN32) || defined(_WIN64)
// do stuff
#endif

名が定義されているかどうか、マクロのテストを定義して、あなたをすることができます結果に論理演算子を適用します。

他のヒント

あなたは#ifと特別な演算子を使用する必要があります definedする

私はそれがこのよう可能なはずだと思います:

#if defined block1 || defined block2 /*or any other boolean operator*/
   /*Code*/
#endif

詳細<のhref = "http://books.google.com.ar/books?id=Nfh5-L3NBTQC&pg=PA536&lpg=PA536&dq=preprocessor+directive+c+logical&source=bl&ots=Ny400rakrd&sig=-bf45YoobTJiiVGoBhtBpA7G82M&hl=es&ei = zzktSqynIt7flQe69O3pCQ&SA = X&OI = book_result&CT =もたらす&resnum = 2#PPA536、M1" REL = "nofollowをnoreferrer">こちら

使用すると、定義されます:

#if defined(A) || defined(B)
    #include <whatever.h>
#endif
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top