宏定義又稱為宏代換、宏替換,簡稱“宏”。
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都網(wǎng)站制作、網(wǎng)站建設、惠安網(wǎng)絡推廣、小程序開發(fā)、惠安網(wǎng)絡營銷、惠安企業(yè)策劃、惠安品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供惠安建站搭建服務,24小時服務熱線:18980820575,官方網(wǎng)址:aaarwkj.com
是C提供的三種預處理功能的其中一種。
1、宏名一般用大寫。
2、使用宏可提高程序的通用性和易讀性,減少不一致性,減少輸入錯誤和便于修改。例如:數(shù)組大小常用宏定義。
3、預處理是在編譯之前的處理,而編譯工作的任務之一就是語法檢查,預處理不做語法檢查。
4、宏定義末尾不加分號。
5、宏定義寫在函數(shù)的花括號外邊,作用域為其后的程序,通常在文件的最開頭。
6、可以用#undef命令終止宏定義的作用域。
7、宏定義可以嵌套。
8、字符串" "中永遠不包含宏。
9、宏定義不分配內(nèi)存,變量定義分配內(nèi)存。
在C語言源程序中,允許用一個標識符來表示一個字符串,稱為宏,宏定義是由源程序中的宏定義命令完成的,宏替換是由預處理程序自動完成的。宏定義是C提供的三種預處理功能的其中一種,這三種預處理包括:宏定義、文件包含、條件編譯。
擴展資料:
宏(Macro),是一種批量處理的稱謂。計算機科學里的宏是一種抽象,它根據(jù)一系列預定義的規(guī)則替換一定的文本模式。
計算機語言如C語言或匯編語言有簡單的宏系統(tǒng),由編譯器或匯編器的預處理器實現(xiàn)。C語言的宏預處理器的工作只是簡單的文本搜索和替換,使用附加的文本處理語言如M4,C程序員可以獲得更精巧的宏。
參考資料:
宏定義百度百科
C語言中的宏定義用法分為兩種。
1、不帶參數(shù)的宏定義比較簡單,就是用一個指定的標識符來代表一個字符串。它的一般形式為“#define 標識符 字符串”,例如#define E 2.718281828459。這種方法使用戶能以一個簡單的名字代替一個長的字符串。
2、帶參數(shù)的宏定義不是僅僅進行簡單的字符串替換,還要進行參數(shù)替換。其定義的一般形式為;“#define 標識符(宏名)(參數(shù)表) 字符串”,字符串中包含在括號中所指定的參數(shù)。例如#define S(a,b) a*b area=S(3. 2)。
擴展資料:
宏定義只占編譯時間,函數(shù)調(diào)用則占用運行時間(分配單元,保存現(xiàn)場,值傳遞,返回),每次執(zhí)行都要載入,所以執(zhí)行相對宏定義會較慢。
使用宏定義次數(shù)多時,宏定義展開后源程序很長,因為每展開一次都使程序增長,但是執(zhí)行起來比較快一點(這也不是絕對的,當有很多宏定義展開,目標文件很大,執(zhí)行的時候運行時系統(tǒng)換頁頻繁,效率就會低下)。而函數(shù)調(diào)用不使源程序變長。
網(wǎng)站欄目:c語言的宏定義函數(shù)名 C語言宏定義函數(shù)
當前URL:http://aaarwkj.com/article16/docpigg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、商城網(wǎng)站、全網(wǎng)營銷推廣、手機網(wǎng)站建設、網(wǎng)頁設計公司、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)