C/C++語言巨集定義##連線符和符#的使用
C/C++語言巨集定義##連線符和符#的使用
(一)C/C++語言巨集定義##連線符和符#的使用
(1) ## 連線符:在帶引數的巨集定義中, 用來將兩個Token連線為一個Token,從而形成一個新的子串。注意這裡連線的物件是Token就行,而不一定是巨集的變數。
例子:
#define XNAME(n) x ## n
當出現int XNAME(1) = 14;時,會被替換為:int x1=14;
(2)#符:是將其後面的巨集引數進行字串化操作(Stringfication),即把巨集引數變為一個字串,簡單說就是在對它所引用的巨集變數 通過替換後在其左右各加上一個雙引號。#符,也就是把傳遞過來的引數當成字串進行替代。
例子:
#define WARN_IF(EXP) do{ if (EXP) fprintf(stderr, "Warning: " #EXP "/n"); } while(0)
當出現WARN_IF (divider == 0);時,相當於如下替換:do {
if (divider == 0)
fprintf(stderr, "Warning" "divider == 0" "/n");
} while(0);
可見#EXP將會被替換為【“divider == 0"】相關文章
- C語言巨集定義中#define中的井號#的使用C語言
- 【C】 13_接續符和轉義符
- c語言巨集的使用C語言
- Solidity語言學習筆記————19、函式可見性定義符、修飾符、保留字和語法Solid筆記函式
- C++中巨集定義#define的用法C++
- C++ | VS2017 C++專案配置使用的常見巨集定義C++
- C語言-識別符號命名C語言符號
- c 語言中巨集定義和定義全域性變數的區別變數
- 解析C++連結錯誤:未定義引用和未解析符號的完整解決方案C++符號
- C語言巨集中"#"和"##"的用法C語言
- 1413: C語言合法識別符號C語言符號
- Go 語言指標符號 *和&Go指標符號
- C語言零基礎教程之預處理和巨集定義篇C語言
- 命令注入-命令的連線符【‘&’‘&&’‘||’‘|’】的含義及其用法
- C語言學習第18篇---巨集定義與使用 / 條件編譯使用分析C語言編譯
- C語言合法識別符號 hd 2024C語言符號
- SCSS 字串連線符CSS字串
- 資料庫中字串連線符的使用資料庫字串
- C++ 預設引數和佔位符C++
- 連結使用的符號符號
- 符號(註釋符+轉義符+接續符)符號
- c語言的定義與宣告C語言
- 聊聊C語言/C++—程式和程式語言C語言C++
- C++中的&引用符號全解C++符號
- C++繼承時的修飾符C++繼承
- <Python>識別符號、變數的定義與使用Python符號變數
- C++和c語言的分別C++C語言
- C語言巨集和函式淺析C語言函式
- C語言中的標頭檔案中的巨集定義C語言
- C++中使用巨集定義來註釋掉所有的cout輸出C++
- [C]有符號數和無符號數符號
- Python 賦值與運算子和連線符Python賦值
- c++筆記_const限定符C++筆記
- 微控制器-C語言-定義和申明C語言
- 【C進階】21、巨集定義與使用分析
- C++ 提示未宣告的識別符號C++符號
- C語言基礎-2、函式的定義與使用C語言函式
- c語言中const修飾符C語言
- 如何在VirtualBox客戶機使用符號連線符號