c语言中常用的预处理命令6,C语言的预处理命令
1、宏替換命令
編譯器遇到宏替換命令所定義的標(biāo)識(shí)符時(shí),用其后的字符串替換該標(biāo)識(shí)符。用這種方式定義符號(hào)常量。形式如下:
#define? 標(biāo)識(shí)符 字符串
#define??? TRUE?? ? 1 //用 TRUE 表示1
#define? ?? FALSE?? 0 //用 FALSE 表示0
另一用法是作為代換。宏名可取參量數(shù),每次遇到宏名時(shí),與之相連的形式參數(shù)由程序中的實(shí)際參數(shù)代替:
#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? 標(biāo)識(shí)符
將宏替換限定在一個(gè)代碼塊內(nèi)。
#define SUCCESS 1
printf ( " %d" , SUCCESS );
#undef SUCCESS
2、終止編譯命令
為提高調(diào)試速度,加入終止編譯命令 #error :
#error MANUAL_STOP
編譯器編譯到這條代碼時(shí)就停止工作,并將字符串MANUAL_STOP作為錯(cuò)誤提示,常與條件編譯命令配合使用。
3、文件包含命令
用于在編譯時(shí)插入另一個(gè)源程序中的內(nèi)容。被包含文件的名字必須用“ ”或者 < > 包圍。
#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? 用于判斷某個(gè)宏名稱是否已定義,如果已經(jīng)定義則執(zhí)行#ifdef 與#endif之間的代碼。
#ifndef 用于判斷某個(gè)宏名稱是否未定義,與前者相反。
#ifdef 標(biāo)識(shí)符
代碼塊
#endif
#ifndef 標(biāo)識(shí)符
代碼塊
#endif
5、修改行號(hào)命令
6、編譯指示命令
7、域定義的宏名
8、注釋
總結(jié)
以上是生活随笔為你收集整理的c语言中常用的预处理命令6,C语言的预处理命令的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: i7 5820k必备!这三款内存超强性能
- 下一篇: 内存新选择,让电脑速度提升飞起