私のコードでは、次のようなコンパイラ定数をいくつか定義しています。
#define D_CR '\x10' // New line
#define D_LF '\x13' // New paragraph
#define D_EOS '\xFF' // End of string
(これらは chars、ints、何でもかまいません ... )
1 つは文字列リテラル、もう 1 つは switch ステートメントです。
unsigned char dialogString[] =
"LOREM IMSUM" D_CR
"DOLAR SIT A MET" D_EOS;
switch (dialogString[i]) {
case D_CR: /* ... */ break;
case D_LF: /* ... */ break;
case D_EOS: /* ... */ break;
default: printf(dialogString[i]); break;
}
私が得ている問題は、型が混在していて、コンパイラの警告が表示されることです。
dialogString.c(5) parse error: token -> ''\x10'' ; column 11
これを両方のシナリオで機能させる方法はありますか?