你把大括號(hào)的位置放錯(cuò)了,sushu函數(shù)被定義在了main函數(shù)里面,但是按照C語(yǔ)言的規(guī)定,函數(shù)不允許嵌套定義,所以你的sushu相當(dāng)于沒(méi)有定義(不知為何你的編譯器沒(méi)有報(bào)錯(cuò)說(shuō)不允許在函數(shù)內(nèi)定義函數(shù))。解決方法是把你最后面多出來(lái)的大括號(hào)移到main函數(shù)最后面。
創(chuàng)新互聯(lián)建站是專(zhuān)業(yè)的合作網(wǎng)站建設(shè)公司,合作接單;提供網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行合作網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
C語(yǔ)言沒(méi)有bool類(lèi)型,需要自己來(lái)定義,同時(shí)IsPrime函數(shù)的變量i重復(fù)定義了修改如下。
#?include?stdio.h?????????????//這是代碼
typedef?enum??//定義bool類(lèi)型
{
true??=?0,
false?=?1,
}bool;
bool?IsPrime(int?m)???????//第三行
{??
int?i;
for?(i?=?2;?i??m;?++i)//?多了一個(gè)int
{
if(m%i?==?0)
break;
}
if(i?==?m)
return?true;
else
return?false;
}
把被調(diào)用函數(shù)寫(xiě)到調(diào)用函數(shù)上面去,這樣就可以免去聲明。
這里你也可以把被調(diào)用函數(shù)剪切到調(diào)用函數(shù)上面去做一下測(cè)試。
出現(xiàn)該錯(cuò)誤的原因?yàn)榫幾g時(shí)只變編譯了源文件的一部分,故在鏈接時(shí)無(wú)法從編譯好的目標(biāo)代碼中找到print函數(shù),所以出錯(cuò)。
根據(jù)你的源文件結(jié)構(gòu),個(gè)人推薦先單獨(dú)編譯源文件為多個(gè)object文件,再統(tǒng)一鏈接。
方法如下
gcc?-c?main.c?#?-c參數(shù)的作用是讓gcc只編譯,不鏈接
gcc?-c?test.c
gcc?-o?main?main.o?test.o?#?將編譯好的目標(biāo)代碼鏈接
當(dāng)然,以上是在gcc為編譯器的前提下執(zhí)行,如使用clang等其他編譯器,方法類(lèi)似(clang的調(diào)用方法與gcc高度兼容)
兩種情況:
1、定義的函數(shù)名與調(diào)用時(shí)的函數(shù)名不相同,可能是手誤,拼寫(xiě)錯(cuò)誤
2、函數(shù)調(diào)用寫(xiě)到了函數(shù)定義之前了
請(qǐng)?zhí)峁┫鄳?yīng)的代碼或截圖,方便進(jìn)一步分析原因
這種屬于函數(shù)返回值的隱式聲明。 隱式聲明的函數(shù)返回值類(lèi)型都是int 當(dāng)然了,這個(gè)只需要了解一下就好了。不建議這么寫(xiě)。 現(xiàn)在很多編譯器都不允許這樣的聲明出現(xiàn)。如果C語(yǔ)言中調(diào)用函數(shù)前面沒(méi)有定義它的返回值類(lèi)型
新聞標(biāo)題:c語(yǔ)言調(diào)用函數(shù)未定義 c語(yǔ)言函數(shù)未定義是什么意思
當(dāng)前路徑:http://chinadenli.net/article38/hpeppp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、手機(jī)網(wǎng)站建設(shè)、ChatGPT、虛擬主機(jī)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
全網(wǎng)營(yíng)銷(xiāo)推廣知識(shí)