【error C2143】 html
error C2143: 語法錯誤 : 缺乏「;」(在「類型」的前面)
緣由:以「編譯爲 C 代碼(/TC)」方式編譯時,沒有把變量定義在函數開始的位置。 shell
【error LNK2019】 ide
error LNK2019: 沒法解析的外部符號 _abc,該符號在函數 _xyz 中被引用
緣由:
當前源文件 xyz 中使用了外部符號 abc ,可是沒法找到該符號,緣由是沒有包含對應的 .lib 庫文件。
另外可能的緣由:
函數
【error C2733】 this
error C2733: second C linkage of overloaded function 'wmemchr' not allowed
緣由:針對處於 C++ 模式下的 VC6 以及其它 VS 版本,當進行 ARM 相關編譯時應該對要使用的 <wchar.h> 頭文件進行 'extern "C++" {}' 處理。
spa
#ifdef __cplusplus extern "C" { #endif # include <wchar.h> #ifdef __cplusplus } #endif
【error C2440】 .net
error C2440: 「=」: 沒法從「void *」轉換爲「void **」
緣由:通常會在調用 malloc 函數後將其返回值賦值給其餘變量時出現,值得注意的是,出現該錯誤的前提是按照「編譯爲 C++ 代碼 (/TP)」進行編譯,若是按照「編譯爲 C 代碼 (/TC)」進行編譯則不會出現該錯誤。 code
【error C2054】 orm
error C2054: 在「inline」以後應輸入「(」緣由:這個錯誤出如今以「 編譯爲 C 代碼 (/TC) 」進行編譯時,內聯函數使用 inline 來標示,而沒有使用 __inline 標識。能夠在 以「 編譯爲 C 代碼 (/TC) 」進行編譯時,增長宏定義 #define inline __inline 。
【Warning C4251】 htm
warning C4251: 'AClass::m_variable' : class 'SomeTemplate<T>' needs to have dll-interface to be used by clients of class 'AClass'
【Warning C4996】
warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup.
warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
緣由:詳細緣由須要參考MSDN上的官方說明。