C でこのようなことをしなければなりません。これは char を使用する場合にのみ機能しますが、文字列が必要です。どうすればできますか?
#define USER "jack" // jack or queen
#if USER == "jack"
#define USER_VS "queen"
#elif USER == "queen"
#define USER_VS "jack"
#endif
ベストアンサー1
可変長文字列の比較をプリプロセッサ ディレクティブで完全に行う方法はないと思います。ただし、次のようにすることはできるかもしれません。
#define USER_JACK 1
#define USER_QUEEN 2
#define USER USER_JACK
#if USER == USER_JACK
#define USER_VS USER_QUEEN
#elif USER == USER_QUEEN
#define USER_VS USER_JACK
#endif
または、コードを少しリファクタリングして、代わりに C コードを使用することもできます。