OR条件で#ifdefを使用する方法


244

非常に基本的な質問をしてごめんなさい。#ifdefディレクティブにOR条件を設定したいのですが?どうやってするか ?私は試した

#ifdef LINUX | ANDROID
...
..
#endif 

うまく行かなかった?適切な方法は何ですか?


15
|Cの条件文でforまたはor を使用している場合、それは間違っています。
Jonathon Reinhart、2015

回答:


523

このような

#if defined(LINUX) || defined(ANDROID)

24

#ifdefのOR条件

#if defined LINUX || defined ANDROID
//...
#endif

または

#if defined(LINUX) || defined(ANDROID)
//...
#endif

上記はどちらも同じですが、どちらを使用するかは単に好みによって異なります。


PS#ifdefは単にの短縮形ですが#if defined、複雑な条件をサポートしていません。


さらに-

  • そして: #if defined LINUX && defined ANDROID
  • XOR: #if defined LINUX ^ defined ANDROID
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.