首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C++ 連結錯誤 LNK2001:main 函數拼寫錯誤導致未解析的外部符號

     編輯:程式設計綜合問答

錯誤現象

編譯通過,連結階段報錯:
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
fatal error LNK1120: 1 unresolved externals

原因分析

程式入口函數拼寫為 int mian()(漏寫 'n'),導致連結器找不到標準的 main 函數。

修正方法

// 錯誤
int mian() { ... }

// 正確
int main() { ... }

補充說明

  • C/C++ 程式入口必須為 main(小寫),參數為 int argc, char* argv[] 或空參數。
  • VC6 等舊版編譯器對大小寫敏感,拼寫錯誤不會在編譯期報錯,只會在連結期爆出 LNK2001。
  • 現代 IDE 通常會提示「找不到主函數」,可快速定位。

代碼片段修正後

int main() {
    zrf_Ratio x(3,7), y(4,9), z;
    z = x - y; // 使用運算子多載
    cout << "x-y=" << z << endl;
    z = x + y;
    cout << "x+y=" << z << endl;
    // ... 其他運算
    return 0;
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved