- ベストアンサー
?\の意味
初歩的な質問ですみません。見ていたプログラムに ?\ とありました。調べてみたのですが意味が分りませんでした。教えて下さい。お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
最初の? は、三項演算子(条件演算子)としての?です。 条件演算子は、 x=(条件)?条件が成立した時の値:条件が不成立の時の値; というように条件によって値が決まるifの様な働きをする演算子でifと違うのは、結果が式になる(文でなく)ということです。 後の¥は、プリプロセッサで行の継続を指示する物です。 #define で、一行が長くなる場合に、次の行に続けるために行末に書きます
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.1
使われている部分の前後を補足してください。
補足
#define FILTER_ARP(_p) (filter.flg[IP_ADDR] ?\ ((*(int *) (_p)->arp_spa == filter.ip.s_addr\ || *(int *) (_p)->arp_tpa == filter.ip.s_addr) ?\ 1 : 0)\ : 1)