C語言零基礎教程之預處理和巨集定義篇
C語言巨集定義
#define
用於在C程式語言中建立符號常量(稱為巨集)。此前處理器命令也可以與引數化巨集一起使用。
巨集替換 巨集函式 案例程式如下:
帶語句的巨集以及多行巨集的編寫
C語言銷燬巨集定義
#undef
用於銷燬已經使用#define建立的巨集。如下測試程式碼:
C語言巨集判斷
#ifdef
如果已定義巨集,則#ifdef返回TRUE;如果未定義巨集,則返回FALSE。
#ifndef
如果未定義指定的巨集,則#ifndef返回TRUE,否則返回FALSE。
#endif
和#ifdef與#endif成對使用
如下測試程式碼:
條件編譯
#if
#if使用指定巨集的值進行條件編譯。
#else
#else是#if的替代方法。
#elif
#elif是#else,在一條語句中後接#if。
#endif
#endif用於終止前處理器條件巨集。
測試案例如下:
注意點:
預處理是在編譯期完成的,所以在處理變數的時候一定要注意,如下測試程式碼:
其他
#include
#include用於將特定的標頭檔案插入C程式。
#error
#error用於在stderr上列印錯誤訊息。
#pragma
#pragma用於向編譯器發出特殊命令。
如:包含靜態庫資源,記憶體對齊方式。
C語言有預定義的巨集
它們如下所示...
__ DATE __:當前日期, __ TIME __:當前時間 __ FILE __:這包含當前檔名。 __ LINE __:包含當前行號。 __ STDC __:編譯器是ANSI,值為1。 如下測試程式碼:
尾言
作業:使用巨集,實現巨集連結串列。
哪裡有什麼老天的眷顧,所謂的幸運和成功都源自你自身的努力和付出。請記住,你現在多走的每一步都在拉開著你和別人的差距。要做,就做生活的強者。
相關文章
- C語言的本質(19)——預處理之一:巨集定義C語言
- C語言(巨集定義)C語言
- C語言巨集定義##連線符和#符的使用C語言
- C/C++語言巨集定義##連線符和符#的使用C++
- c/c++標準預定義巨集C++
- 有關C語言的知識---巨集定義用法C語言
- C 語言巨集定義 #define 的理解與資料整理
- c 語言中巨集定義和定義全域性變數的區別變數
- C語言學習第18篇---巨集定義與使用 / 條件編譯使用分析C語言編譯
- C語言巨集定義中#define中的井號#的使用C語言
- 如何系統學習C 語言(下)之 預處理命令篇
- C 語言預處理命令總結大全
- C語言巨集中"#"和"##"的用法C語言
- 【自然語言處理篇】--以NLTK為基礎講解自然語⾔處理的原理和基礎知識自然語言處理
- C語言程式設計——9,預處理命令C語言程式設計
- 零基礎學C語言 HelloWorldC語言
- C語言巨集和函式淺析C語言函式
- C++巨集定義#defineC++
- C語言的本質(20)——預處理之二:條件預處理和包含標頭檔案C語言
- c語言巨集的使用C語言
- 微控制器-C語言-定義和申明C語言
- C語言的本質(21)——預處理之三:其它預處理特性及總結C語言
- C語言基礎-2、函式的定義與使用C語言函式
- c語言的定義與宣告C語言
- 特徵工程之特徵預處理特徵工程
- 大話css預編譯處理(三):基礎語法篇CSS編譯
- C語言中的標頭檔案中的巨集定義C語言
- 用c語言處理檔案C語言
- Go 語言操作 MySQL 之 預處理GoMySql
- c語言函式指標的定義C語言函式指標
- Oracle PL/SQL語言初級教程之異常處理OracleSQL
- 自然語言處理中的語言模型預訓練方法自然語言處理模型
- C語言細節 前處理器C語言
- c語言字串處理函式大全C語言字串函式
- 【C++】 63_C語言異常處理C++C語言
- C++中巨集定義#define的用法C++
- C語言——設計printf除錯巨集C語言除錯
- C語言巨集的高階應用C語言