2

この C ステートメントの意味を誰か教えてもらえますか?

 static uint8_t chess_storage(DM%2) host_response[14] ;
4

1 に答える 1

7

有効な C ではありません%。その場所に a を配置することはできません。またchess_storage(DM%2)、(おそらく)それが何かを実行できるマクロでない限り、そこにすべてを含めることはできません。

これ:

static uint8_t host_response[14];

host_response14 個の 8 ビット符号なし整数 (別名「バイト」) の配列として宣言します。

これを追加すると:

#define chess_storage(size)
#define DM 1

次に、コードは少なくとも有効になり、プリプロセッサが計算できるchess_storage引数でマクロの呼び出しを取得します。1%2マクロは空なので、その項全体がなくなり、上記の配列宣言が残ります。

おそらく他にも、より「芸術的な」マクロが考えられます。

于 2012-12-19T10:41:17.330 に答える