1、講的是:“VC編譯器在編譯時不默認(rèn)連接math.h函數(shù)”它不屬于C運(yùn)行庫,所以沒有默認(rèn)鏈接 后來用了VS2008,發(fā)現(xiàn)成功了。
目前成都創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計、浦東網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
2、外部函數(shù)extern時聲明這個函數(shù)為外部函數(shù),本文件不做定義,只調(diào)用,編譯不會出錯,但不能運(yùn)行(沒有函數(shù)實體)。如果想有運(yùn)行結(jié)果就必須將函數(shù)實體包含進(jìn)來,所以文件包含和extern是配合使用的。
3、一般是你在調(diào)用函數(shù)的時候傳遞的是int類型的數(shù)據(jù),但那個函數(shù)定義的參數(shù)類型不是int(比如是結(jié)構(gòu)或者指針或者數(shù)組)。
4、函數(shù)調(diào)用了,是你寫的有問題。比如你第一次調(diào)用 swap(n1,n2),這個時候程序把n1,n2的值傳給p1,p2,然后p1,p2的值交換了,但是你需要的n1,n2沒有變化。
可能是你編譯器設(shè)置的問題,看看設(shè)置的缺省目錄是否正確。
出現(xiàn)該錯誤的原因為編譯時只變編譯了源文件的一部分,故在鏈接時無法從編譯好的目標(biāo)代碼中找到print函數(shù),所以出錯。根據(jù)你的源文件結(jié)構(gòu),個人推薦先單獨(dú)編譯源文件為多個object文件,再統(tǒng)一鏈接。
C語言已經(jīng)默認(rèn)沒有stdbool.h了,因為這個頭文件不與任何庫文件相關(guān),只是簡單的定義了true和false。這個你完全可以自己實現(xiàn)。
又一版本的就如“二樓”說的,在命名時,命名為cpp,有的是‘c’。
因此當(dāng)你雙擊這個錯誤的時候,他就會跳轉(zhuǎn)到一個C語言的頭文件里面。主要有兩個解決方法如下。
如果調(diào)用函數(shù)寫在主函數(shù)之后。那就要主函數(shù)聲明了。
函數(shù)調(diào)用了,是你寫的有問題。比如你第一次調(diào)用 swap(n1,n2),這個時候程序把n1,n2的值傳給p1,p2,然后p1,p2的值交換了,但是你需要的n1,n2沒有變化。
看圖你是沒有講函數(shù)聲明到頭文件中,所以用不了??梢赃@樣子處理:先在.h頭文件中聲明函數(shù)。在.c文件中實現(xiàn)函數(shù)。在使用的文件中先引入頭文件,類似stdio.h。這樣就可以使用了。
關(guān)于c語言中函數(shù)調(diào)用問題解答如下:首先如果是編譯的這個代碼那這個函數(shù)肯定被調(diào)用了,讓你覺得沒有調(diào)用是因為while循環(huán)沒有被執(zhí)行。圖中紅色框內(nèi)代碼p1和p2經(jīng)過賦值p1是肯定大于p2所以不滿足while.的條件直接退出了函數(shù)。
分享題目:C語言鏈接找不到函數(shù) c語言鏈接找不到函數(shù)怎么回事
文章分享:http://www.rwnh.cn/article20/ddhchco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、軟件開發(fā)、建站公司、App開發(fā)、網(wǎng)站設(shè)計公司、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)