You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么C语言编译时反复出现collect2.exe: error: ld returned 1 exit status错误

问题原因与解决方案

你遇到的报错本质是链接器找不到程序的入口函数,原因非常简单:你把C语言规定的默认入口函数名main拼写错误,写成了mian。

编译器在编译你的代码时,会把你写的mian当成一个普通的自定义函数处理,而程序运行需要的标准入口函数main不存在,链接阶段就会报错找不到入口,最终抛出collect2.exe: error: ld returned 1 exit status错误。你换IDE、重装编译器都解决不了,因为问题完全出在代码的拼写错误上,和工具链无关。

修复方法

把代码里的

int mian(){

改成

int main(){

保存后重新编译运行即可,其余代码不需要改动。

额外排查方向(如果修改后仍然报错)

  • 检查是否有同名的arrays.exe程序正在后台运行,占用了文件导致编译器无法写入新的可执行文件,关掉正在运行的程序再重新编译即可
  • 检查你的代码文件名有没有使用中文、空格或者特殊字符,尽量只用英文、数字和下划线命名

内容的提问来源于stack exchange,提问作者Darshika Jadhav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:45:08