會的,當(dāng)你運行時,編譯器還要檢查你的函數(shù)是否有格式或其它錯誤!
創(chuàng)新互聯(lián)長期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為天元企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè),天元網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
頭文件里你在代碼中沒有調(diào)用過的函數(shù)不會被編譯到exe文件中。如果沒有用過的函數(shù)也編譯進去,那可執(zhí)行程序得多大。
雖然不會編譯進去,平常還是需要用哪些函數(shù)就包含哪個頭文件,不需要的的不包含,編譯時費時間。
C是多文件編譯的,編譯時會把每個Cpp文件單獨編譯,然后在鏈接過程中,代碼中調(diào)用了哪個函數(shù),編譯器就會鏈接哪個函數(shù),沒有調(diào)用的不會鏈接。
采用條件編譯即可。
在.h頭文件中加上
#if?1
#define?FUNC_ENABLE
void?fun();
#endif
在.c中加上
#ifdef?FUNC_ENABLE
void?fun()?{?printf("OK\n");?}
#endif
當(dāng)我們不想編譯該函數(shù)時,加#if 1改為#if 0即可。
例子:
#include?stdio.h
#if?1
#define?FUNC_ENABLE
void?fun();
#endif
#ifdef?FUNC_ENABLE
void?fun()?{?printf("OK\n");?}
#endif
int?main(void)?{
fun();
return?0;
}
本文標(biāo)題:c語言沒使用的函數(shù)不編譯 c語言中可以不使用函數(shù)
文章網(wǎng)址:http://www.rwnh.cn/article4/doggcie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、App設(shè)計、App開發(fā)、服務(wù)器托管、網(wǎng)站營銷、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)