我遇到了这段代码,但不确定#reg
在做什么:
#define FPGA_WRITE(reg,val) do { printf("%-20s %08X <<- %08lX\n", #reg, (reg), (unsigned long)(val));} while (0)
int main()
{
FPGA_WRITE(10,15);
return 0;
}
这将打印以下内容:
10 0000000A <<- 0000000F
如果我取出#
,则在执行代码时会遇到段错误。奇怪。 #
的用途是什么?