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

MacOS下VS Code运行C++程序报exited with code 1错误如何解决?

报错根因说明

这个报错是MacOS下clang编译器链接阶段的典型错误,错误日志中Undefined symbols for architecture arm64: "_main"已经明确指向问题:链接器找不到C++程序必须的全局入口函数main对应的符号,无法生成可执行文件,最终返回退出码1。

修复步骤
  • 第一步:检查你的demo.cpp代码,确认是否存在符合标准规范的main函数,C++标准要求程序入口必须为全局作用域下的int类型main函数,合法写法如下:
// 无参数版本
int main() {
    // 此处写你的业务代码
    return 0;
}

// 带命令行参数版本
int main(int argc, char *argv[]) {
    // 此处写你的业务代码
    return 0;
}
  • 第二步:排查常见的书写错误:
    • 避免main的拼写错误,比如误写为mian等
    • 不要省略main函数前的int返回值声明,C++标准不允许默认返回值,clang编译器不支持省略写法
    • 不要将main函数定义在自定义命名空间内部,否则链接器无法找到全局作用域下的入口符号
    • 如果你是多文件项目,确认main函数定义在demo.cpp中,如果在其他源文件,需要将对应源文件也加入编译指令,比如你有main.cpp和utils.cpp,编译指令需要写g++ main.cpp utils.cpp -o demo
  • 第三步:修正代码后重新运行即可,编译链接流程会正常生成可执行文件。

内容的提问来源于stack exchange,提问作者Abhishek Kataria

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:48:03