⑴ c語言有時候為什麼在編譯顯示沒錯誤,鏈接卻顯示有錯誤
估計是重定義一類的問題吧。。。當然也有可能編譯器與系統不兼容。
具體的話得看程序頭表符號重定位這些東西是不是出了問題。。
最直接的方法是閱讀代碼。。看代碼是不是哪裡出了問題,比如重定義,比如多個強符號。。
這里只有猜。。需要源代碼。。以及說明用來編譯鏈接工具。
⑵ vc6.0編寫的程序沒錯,但是編譯連接時提示有錯誤,運行時提示文件不存在怎麼回事求大神幫忙
1 編譯階段,執行的是對單個文件的轉換,從源代碼轉換成二進制文件。
2 鏈接階段,將每個源文件轉成的二進制文件,及相關的系統庫文件共同打包生成可執行文件。
3 從定義上可以看出,鏈接階段,出現錯誤有兩種可能:
1) 函數中引用了不存在的函數。
2) 編譯環境有問題,導致ld出錯。
⑶ 在vc++里輸入c語言空函數,為什麼編譯沒錯,連接出錯
你新建工程時,你如果選擇Win32
Application(Windows程序),那麼在程序中入口函數就必須是WinMain()
如果你是選擇Win32
Console
Application(控制台程序,也就是DOS程序,不能使用圖形函數),那麼在程序中入口函數為main()
⑷ vc6.0編譯沒錯,鏈接出錯。求解
#define
SIXTY
"60"
意思是以後見到
SIXTY,就用字元串「60」
來替代它。所以
n/SIXTY
就變成
n
/
"60"。一個整數不能除以一個字元串,所以出錯。
#define
SIXTY
60
意思是以後見到
SIXTY,就用數字
60
來替代它。改成這樣就對了。
⑸ 用VC打開教程所附程序時編譯正確,但連接時發生錯誤,導致程序無法運行,請大家幫我看看怎麼回事
應該是將庫文件連接選項設置錯誤了
樓主可能是創建了Console項目,但是貼了非Console項目的代碼
如果是這樣,建議你根據書本的要求重新創建項目,貌似樓主在學MFC,所以建議創建MFC項目
如果不是,則參考下面的設置:
第一個是和你測試的例子相關的,這里不好解釋,沒有相關信息,應該是定義了但沒有實現
第二三個需要你在項目的C++編譯選項中設置一下,參考設置:打開項目屬性對話框,在C/C++選項中,找到「代碼生成」,將運行庫改為多線程,Debug的選多線程調試
最後一個,沒有main函數,定義一下