谁能解释这段代码会做什么?

标签 c

谁能告诉我这个 C 语句是什么意思?

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

最佳答案

它不是有效的 C,你不能在那个位置有 %。而且你也不能把整个 chess_storage(DM%2) 东西都放在那里,除非(可能)它是一个可以做你可以做的事情的宏。 p>

这个:

static uint8_t host_response[14];

会将 host_response 声明为 14 个 8 位无符号整数(也称为“字节”)的数组。

如果我们添加这个:

#define chess_storage(size)
#define DM 1

然后代码至少变得有效,用预处理器能够计算的参数 1%2 代替我们调用宏 chess_storage。由于宏是空的,整个术语将消失,留下上面的数组声明。

可能还有其他更“艺术”的宏。

关于谁能解释这段代码会做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13950488/

相关文章:

c - 难以理解这段代码的工作原理(双指针)

关于数组的 C 概念

c - VS2019 C6011 错误取消引用空指针 'NewNode'

c - fseek 中偏移值大于 long int

c - 使用 java/jna 获取硬件信息以在所有操作系统上工作

iphone - 像素配色估计

c - 如何在没有段错误的情况下使用 ffmpeg 的 `avformat_open_input` 打开远程 radio 流?

c - malloc 在不同的机器上表现不同

C/C++ 如何读取 UNICODE 的 const char?

c++ - 浮点比较