(toppers-users 1747) Re: syslog 機能について
高木信尚
takagi-n @ biggie.jp
2004年 11月 8日 (月) 14:38:56 JST
皆さん、こんにちは。
> 上の方法で良ければすでにやっていたと思うのですが、ダメなのです。試して
> みるとすぐにわかりますが、「#define syslog()」だと、syslog(...) が展開
> できません。GCC の拡張を使えばできるのですが。
>
> ということで、良いアイデア募集。
可能性のあるアイデアを一通り出しておきます。
1. GCCの拡張機能またはC99の可変個引数マクロを使用する。
2. インライン関数を使用する。
3. #define syslog 1?(ER)0:(ER)
のように定義する。ただし、syslogの結果に対して直接等価演算子が使えない。
4. #define syslog !sizeof
のように定義する。たぶん期待通りの結果になる。
といったところかと思います。
トリッキーなので読みにくいという欠点に目をつぶれば、4.が一番良さそうです。
-------------
高木信尚