看板 C_and_CPP 關於我們 聯絡資訊
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) 使用code:Blocks編譯後出現錯誤訊息如下: C:\Users\Documents\p3.o:p3.c|| undefined reference to `sleep'| C:\Users\Documents\p3.o:p3.c|| undefined reference to `sound'| C:\Users\Documents\p3.o:p3.c|| undefined reference to `delay'| C:\Users\Documents\p3.o:p3.c|| undefined reference to `nosoud'| ||=== Build finished: 4 errors, 0 warnings ===| 希望得到的正確結果: 能正常complier 程式跑出來的錯誤結果: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Windown 7 有問題的code: (請善用置底文標色功能) 補充說明: 程式碼如下: #include <stdio.h> #include <dos.h> void main (void) { sleep(3); unsigned f[]={523,587,659,523,523,587,659,523, 659,698,784,784,659,698,784,784, 784,880,784,698,659,523, 784,880,784,698,659,523, 523,392,523,523,523,392,523}; unsigned d[]={500,500,500,500,500,500,500,500, 500,500,500,500,500,500,500,500, 250,250,250,250,500,500, 250,250,250,250,500,500, 500,500,1000,500,500,1000}; int i; for (i=0;i<34;i++) { sound(f[i]); delay(d[i]); } nosoud(); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.207.34
purpose:你的程式碼哪抄來的 09/28 21:09
loveme00835:我猜是從VC6移植過來的, 再加上為了解決未宣告的問題 09/28 21:10
loveme00835:dos.h 也複製過來了 0.0 09/28 21:10
kentlle:我是從書上抄的 09/28 21:12
adks3489:會不會是TC 09/28 21:13
purpose:連結錯誤,C可以直接調用函數,但你要正確連結到包含該函 09/28 21:14
purpose:數的檔案,比如 xxx.o 裡面可能有定義 sound 函數 09/28 21:15
kentlle:沒錯,我是從TC上的書抄來的 09/28 21:17
adks3489:mingw裡面的dos.h沒有那幾個東東 09/28 21:21
kentlle:那請問一下,我可以抓dos.h檔覆蓋它嗎? 09/28 21:25
adks3489:應該不能吧..還是說有什麼高招? 09/28 21:26
adks3489:我只是個新手 等高手來救援吧 09/28 21:27
purpose:你應該直接換本市面上的新書,不要管這個程式碼跟這本書 09/28 21:30
purpose:然後你少了某些檔案,不能連結出執行檔,找到dos.h也沒用 09/28 21:31
james732:如果去找TC回來安裝可以解決他的問題嗎? XD 09/28 21:33
james732:(實在沒用過TC,不太了解) 09/28 21:34
purpose:我這輩子第一本C的書就在講VC了...TC那可是十幾年的東西 09/28 21:34
purpose:就在講VC6了,少打 09/28 21:34
tropical72:dos.h, graphic.h 事實上我都試過,好笑的是都不能用 09/28 21:54
loveme00835:如果說樓主用的IDE是VC6, 被說該換掉的不只有書吧..XD 09/28 21:54
tropical72:於是我下載了TC,將其dos.h, graphic.h放進VC裡,還是 09/28 21:55
tropical72:不能用,最後的解決方案是:網路上竟然有人用 VC6.0 的 09/28 21:56
tropical72:windows.h 及其它 lib,去模擬dos.h, graphic.h.. 09/28 21:56
purpose:那個最後方案在哪?想見識看看,跪求連結謝謝 09/28 22:00
tropical72:我找找文章,先發信給你下載檔案(這個是放在電腦裡的) 09/28 22:05
james732:樓上用置底文貼程式碼網址來貼吧 我也想看 XDDD 09/28 22:05
tropical72:http://nopaste.csie.org/adea1 09/28 22:10
tropical72:http://nopaste.csie.org/f60dc 09/28 22:11
tropical72:話說..都包成lib了,原po也只提供lib與.h,要看似乎... 09/28 22:11
james732:原來只有lib 這樣就很可惜了 09/28 22:14
purpose:謝謝t大無私分享 09/28 22:30
purpose:google VC 控制台增強庫,應該是這個,大陸人真強 09/28 22:30
tropical72:印象中,當初他編code的原因是學校老師在教圖型學時,選 09/28 22:39
tropical72:則用graphic.h之TC,但學生反應為什麼之前他們學VC現在 09/28 22:39
tropical72:還要用舊的,老師的原因是,因為還要學GDI,會模糊上課 09/28 22:40
tropical72:焦點,於是, 這套lib就這麼出來了 09/28 22:42
purpose:很有執行力,佩服 09/28 22:42
tropical72:話說我也覺得GDI要學一段時間,現在也覺得用它學還不錯. 09/28 22:43
tropical72:原po如果要解決他的問題,我想還要再解決dos.h的問題吧 09/28 22:45