一起talk C栗子吧(第一百二十四回:C語言實例--內置宏)
各位看官們,大家好,上一回中咱們說的是顯示變量和函數地址的樣例,這一回咱們說的樣例是:內置宏。閑話休提,言歸正轉。讓我們一起talk C栗子吧!
看官們,我們在編譯程序的時候,假設有語法錯誤,編譯器就會提示,在某個文件的某一行有錯誤,這是怎麽做到的呢?事實上是使用了C語言的內置宏。
說到宏,我想大家都知道,而所謂的內置宏相似於C語言的關鍵字,它是C語言自定義的,因此我們不須要定義宏,就能夠直接使用。經常使用的內置宏有“_LINE_”和“_FILE_”。假設把它們放到代碼中,那麽能夠輸它們所在位置的行號和所在的文件名稱。編譯器輸出錯誤的文件名稱和行號時就使用了它們。
事實上,它們經常被用來在文件裏加入調試信息。由於我們寫的程序難免會有錯誤,所以須要對程序進行調試。在文件裏加入內置宏後,我們通過調試能夠高速地找到發生錯誤在哪個文件裏的哪一行。
這樣就能夠高速改動程序中的錯誤,進而提高了工作效率。
看官們,我們舉一個簡單的樣例。來說明內置宏的使用方法,以下是具體的代碼請大家參考:
#include<stdio.h>
int show()
{
printf("hello \n");
printf("file:%s line:%d \n",__FILE__,__LINE__);
return 0;
}
int main()
{
printf("file:%s line:%d \n",__FILE__,__LINE__);
show();
return 0;
}
我們在代碼中通過內置宏來輸出當前的文件名稱和行號。以下是程序的執行結果,請大家參考:
file:test.c line:13 //這是main函數中的內容
hello
file:test.c line:7 //這是show函數中的內容
各位看官,關於內置宏的樣例咱們就講到這裏。欲知後面還有什麽樣例。且聽下回分解 。
一起talk C栗子吧(第一百二十四回:C語言實例--內置宏)