鍍金池/ 教程/ C/ C語(yǔ)言#undef指令
C語(yǔ)言printf()和scanf()函數(shù)
C語(yǔ)言strlen()函數(shù)
C語(yǔ)言指針
C語(yǔ)言ftell()函數(shù)
C語(yǔ)言#ifdef指令
C語(yǔ)言程序執(zhí)行流程
C語(yǔ)言歷史
C語(yǔ)言fprintf()和fscanf()函數(shù)
C語(yǔ)言#define指令
C語(yǔ)言#if指令
C語(yǔ)言將數(shù)組傳遞給函數(shù)
C語(yǔ)言指針的指針
C語(yǔ)言rewind()函數(shù)
C語(yǔ)言常量
C語(yǔ)言strcat()函數(shù)
C語(yǔ)言#ifndef指令
C語(yǔ)言continue語(yǔ)句
C語(yǔ)言注釋
C語(yǔ)言#include指令
C語(yǔ)言類型轉(zhuǎn)換
C語(yǔ)言strcpy()函數(shù)
C語(yǔ)言strlwr()函數(shù)
C語(yǔ)言while循環(huán)
C語(yǔ)言字符串
C語(yǔ)言strrev()函數(shù)
C語(yǔ)言gets()和puts()函數(shù)
C語(yǔ)言文件處理
C語(yǔ)言存儲(chǔ)分類
C語(yǔ)言運(yùn)算符
C語(yǔ)言數(shù)據(jù)類型
C語(yǔ)言strcmp()函數(shù)
C語(yǔ)言VS開(kāi)發(fā)環(huán)境安裝
C語(yǔ)言轉(zhuǎn)義序列
C語(yǔ)言第一個(gè)程序
C語(yǔ)言變量
C語(yǔ)言goto語(yǔ)句
C語(yǔ)言預(yù)處理器指令
C語(yǔ)言指針?biāo)阈g(shù)運(yùn)算
C語(yǔ)言數(shù)學(xué)函數(shù)
C語(yǔ)言二維數(shù)組
C語(yǔ)言for循環(huán)
C語(yǔ)言命令行參數(shù)
C語(yǔ)言通過(guò)值和引用函數(shù)
C語(yǔ)言fputs()和fgets()函數(shù)
C語(yǔ)言do-while循環(huán)
C語(yǔ)言結(jié)構(gòu)體數(shù)組
C語(yǔ)言循環(huán)
C語(yǔ)言#pragma指令
C語(yǔ)言關(guān)鍵字
C語(yǔ)言#error指令
C語(yǔ)言聯(lián)合體
C語(yǔ)言特點(diǎn)
C語(yǔ)言break語(yǔ)句
C語(yǔ)言遞歸
C語(yǔ)言函數(shù)
C語(yǔ)言結(jié)構(gòu)體
C語(yǔ)言switch語(yǔ)句
C語(yǔ)言結(jié)構(gòu)體嵌套
C語(yǔ)言fputc()和fgetc()函數(shù)
C語(yǔ)言fseek()函數(shù)
C語(yǔ)言字符串函數(shù)
C語(yǔ)言if-else語(yǔ)句
C語(yǔ)言教程
C語(yǔ)言宏
C語(yǔ)言數(shù)組
C語(yǔ)言strupr()函數(shù)
C語(yǔ)言#undef指令

C語(yǔ)言#undef指令

#undef預(yù)處理指令用于取消通過(guò)#define定義的常量或宏。

語(yǔ)法:

#undef token

我們來(lái)看一個(gè)簡(jiǎn)單的例子來(lái)了解如何定義一個(gè)常量。

#include <stdio.h>  
#define PI 3.14  
#undef PI  
main() {  
   printf("%f",PI);  
}

執(zhí)行上面示例代碼,得到以下結(jié)果 -

Compile Time Error: 'PI' undeclared

#undef指令用于將預(yù)處理常量定義取消定義,以便您可以再次聲明常量。

我們來(lái)看一個(gè)例子,在定義和取消定義數(shù)字變量。 但在未定義之前,它被平方變量使用。

#include <stdio.h>  
#define number 15  
int square=number*number;  
#undef number  
main() {  
   printf("%d",square);  
}

執(zhí)行上面示例代碼,得到以下結(jié)果 -

255