3.還有一種是讓人腦惱火的:鏈接錯誤 與 LIBCMT沖突,與MSVCRT沖突 解決方法 1).在“配置屬性-->鏈接器-->輸入-->忽略特定庫”中把libcmt.lib添加進去 2).當發(fā)生沖突的是其它自己編譯的庫函數(shù)時,,可能是因為lib版本不一致,。解決的辦法是根據配置重新編譯lib,打開項目屬性,,將“配置屬性-->C/C++-->代碼生成-->運行時庫”設置為“多線程調試 DLL(/MDd)”(因為新工程的設置是這樣子),。重新編譯
error LNK2019: unresolved external symbolLNK2019錯誤一般都是 compile是能找到相應的header (.h)文件,但鏈接時找不到相應的 lib 庫文件(也含dll文件)問題大致是這樣:我在A.h中聲明了一個函數(shù),,A.cpp中對這個函數(shù)進行了實現(xiàn),。在B.h中引用了A.h的頭文件,在B.cpp中用到了A.cpp中實現(xiàn)的這個函數(shù),。發(fā)覺路徑什么的都沒有問題,。就是報錯。后來仔細檢查才發(fā)現(xiàn),,原來我在A.cpp中實現(xiàn)的這個函數(shù)和A.h中定義的不一樣,。A.h中定義的這個函數(shù)有3個參數(shù),A.cpp中實現(xiàn)的時候有5個參數(shù),而在B.cpp中調用時考慮的是3個參數(shù)的情形,。這樣鏈接時就出現(xiàn)找不到函數(shù)的外部符號了,。提醒大家要仔細。 ---------------------------------------------- 當出現(xiàn)這種錯誤時,,你首先要做得是檢查代碼拼寫錯誤 ,,特別是字母拼寫順序錯誤、{ }不匹配,,有很大概率是這種低級錯誤,。接下來才考慮其它問題:
產生這個問題可能的原因 2. 你用vc打開了一個.c/.cpp 文件,,然后直接編譯這個文件,這個文件中使用了WinMian而不是main作為入口函數(shù),。vc這時的默認設置是針對控制臺程序的,。 解決方法 2).進入project->setting->Link, 在Project options中將 /subsystem:console改為/subsystem:windows. 3.)保存設置,Rebuild All.
|
|