簡體   English   中英

#符號在C中的含義是什么?

[英]What does # sign mean in C?

我遇到過這段代碼,我不確定#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

如果我取出# ,我在執行代碼時會遇到段錯誤。 奇怪。 #的用途是什么?

它是#define預處理器宏中使用的字符串化運算符(#)
它將它前面的參數轉換為帶引號的字符串

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM