c语言中常用的预处理命令6,C语言的预处理命令
1、宏替換命令
編譯器遇到宏替換命令所定義的標識符時,用其后的字符串替換該標識符。用這種方式定義符號常量。形式如下:
#define? 標識符 字符串
#define??? TRUE?? ? 1 //用 TRUE 表示1
#define? ?? FALSE?? 0 //用 FALSE 表示0
另一用法是作為代換。宏名可取參量數,每次遇到宏名時,與之相連的形式參數由程序中的實際參數代替:
#define? ??MAX(a ,b) ( a >= b ) ? a : b
#define MAX(a ,b) ( a >= b ) ? a : b
int main( )
{
int x = 190 , y = 106;
printf("MAX : %d" , MAX( x , y ) );
}
命令#undef 用作取消已定義的宏名替換:
#undef? 標識符
將宏替換限定在一個代碼塊內。
#define SUCCESS 1
printf ( " %d" , SUCCESS );
#undef SUCCESS
2、終止編譯命令
為提高調試速度,加入終止編譯命令 #error :
#error MANUAL_STOP
編譯器編譯到這條代碼時就停止工作,并將字符串MANUAL_STOP作為錯誤提示,常與條件編譯命令配合使用。
3、文件包含命令
用于在編譯時插入另一個源程序中的內容。被包含文件的名字必須用“ ”或者 < > 包圍。
#include "filename.h"
#include
4、條件編譯命令
1、#if 、#else 、#elif 及#endif
#define X 190
#define Y 106
#if X <= Y // 如果條件成立,編譯;否則編譯 #else
printf( " MIN : %d", X );
#else
printf( " MIN : %d", Y );
#endif
2、#ifdef 和ifndef
#ifdef? 用于判斷某個宏名稱是否已定義,如果已經定義則執行#ifdef 與#endif之間的代碼。
#ifndef 用于判斷某個宏名稱是否未定義,與前者相反。
#ifdef 標識符
代碼塊
#endif
#ifndef 標識符
代碼塊
#endif
5、修改行號命令
6、編譯指示命令
7、域定義的宏名
8、注釋
總結
以上是生活随笔為你收集整理的c语言中常用的预处理命令6,C语言的预处理命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: i7 5820k必备!这三款内存超强性能
- 下一篇: c语言设计第六章答案,c语言第六章 循环