#undef 标识符
生活随笔
收集整理的這篇文章主要介紹了
#undef 标识符
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
???? ? ? #undef 是在后面取消以前定義的宏定義
??????? 該指令的形式為
????? ?? #undef 標(biāo)識符
??? ??? 其中,標(biāo)識符是一個宏名稱。如果標(biāo)識符當(dāng)前沒有被定義成一個宏名稱,那么就會忽略該指令。一旦定義預(yù)處理器標(biāo)識符,它將保持已定義狀態(tài)且在作用域內(nèi),直到程序結(jié)束或者使用#undef 指令取消定義。
???????在此程序中,我們將取消在先前程序中對預(yù)處理器的定義。
#include <iostream.h> #include<string.h>#define MAX 5 #undef MAXvoid main(){char name[MAX]="abcde";cout<<"MAX = "<<MAX<<endl;for(int i=0;i<MAX;i++)cout<<name<<" "<<endl; }???? 得到如下錯誤消息:
???? 未定義符號 'MAX'
???? 初始值設(shè)定項太多
???? 在此程序中對 MAX 定義后又取消了定義。編譯該程序時報錯。由于未定義 MAX,char name[MAX] 的數(shù)組大小不可用,因此編譯器發(fā)出第二個錯誤消息。
總結(jié)
以上是生活随笔為你收集整理的#undef 标识符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Arduino 代码机制
- 下一篇: 双面打印无效选择了文件服务器,记得要收藏