当前位置: 首页 > news >正文

Visual Studio Code 如何编写运行 C、C++ 程序

目录

      • 安装 MinGW-w64 编译器(推荐)
      • 在 VS Code 中配置 C++ 开发环境
  • 参考链接

在vs code上运行c++脚本,报了下面的错误,我仅仅安装了vs code及在商店里下载了插件,其它配置操作没有做,直接对一个脚本进行运行,报了下面的报错信息。

  • 正在执行任务: f:\src\g++ -Wall -Wextra -g3 f:\src\AnemometerTowerRecommend.cpp -o f:\src\output\AnemometerTowerRecommend.exe
  • 终端进程启动失败: shell 可执行文件“f:\src\g++”的路径不存在。

这个错误是因为 VS Code 尝试使用 g++ 编译器来编译您的 C++ 代码,但是它找不到 g++ 编译器。错误信息显示 VS Code 在尝试从项目路径中执行 g++ 命令(“f:\src\g++”),而不是从系统路径中查找。

要解决这个问题,您需要:

  1. 安装 C++ 编译器(如 MinGW-w64 或 MSVC)
  2. 配置 VS Code 以正确使用编译器

具体步骤如下:

安装 MinGW-w64 编译器(推荐)

  1. 下载 MinGW-w64 安装程序,可以从 MSYS2 官网 下载
  2. 安装 MSYS2,然后打开 MSYS2 终端并运行:
    pacman -S --needed base-devel mingw-w64-x86_64-toolchain
    
  3. 将 MinGW 的 bin 目录添加到系统 PATH 环境变量(通常是 C:\msys64\mingw64\bin

在 VS Code 中配置 C++ 开发环境

  1. 确保已安装 “C/C++” 和 “C/C++ Extension Pack” 扩展
  2. 在您的项目目录中创建 .vscode 文件夹(如果没有的话)
  3. .vscode 文件夹中创建 tasks.json 文件,配置编译任务:
{"version": "2.0.0","tasks": [{"label": "build","type": "shell","command": "g++","args": ["-Wall","-Wextra","-g3","${file}","-o","${fileDirname}\\output\\${fileBasenameNoExtension}.exe"],"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"]}]
}
  1. .vscode 文件夹中创建 launch.json 文件,配置调试:
{"version": "0.2.0","configurations": [{"name": "g++.exe - 生成和调试活动文件","type": "cppdbg","request": "launch","program": "${fileDirname}\\output\\${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "gdb","miDebuggerPath": "gdb.exe","setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "build"}]
}
  1. 确保在您的项目路径中创建 output 文件夹(例如:f:\03-LTC\034-2025\0343-复杂地形项目测风点代表性研究\GoldWindWindMeasure\GoldWindWindMeasure\src\output\

完成上述设置后,您应该可以通过按 F5 或使用 VS Code 中的"运行和调试"功能来编译和运行您的 C++ 程序。

参考链接

  1. 下载链接;
  2. MinGW-w64的安装详细步骤(c/c++的编译器gcc、g++的windows版,win10、win11真实可用) 2023.10;
http://www.lryc.cn/news/546757.html

相关文章:

  • 动静态库-Linux 学习
  • 【Hudi-SQL DDL创建表语法】
  • HTML label 标签使用
  • bge-large-zh-v1.5 与Pro/BAAI/bge-m3 区别
  • JVM常用概念之对象初始化的成本
  • [AI机器人] Web-AI-Robot机器人前瞻版--比奇堡海之霸凯伦
  • 嵌入式学习-EXTI外部中断
  • CSS—元素水平居中:2分钟掌握常用的水平居中
  • PyTorch 中结合迁移学习和强化学习的完整实现方案
  • 大语言模型学习--本地部署DeepSeek
  • Linux:vim快捷键
  • Unity 对象池技术
  • 算法1-4 凌乱的yyy / 线段覆盖
  • 【计网】数据链路层
  • javaweb自用笔记:Vue
  • CSS Overflow 属性详解
  • 沃丰科技结合DeepSeek大模型技术落地与应用前后效果对比
  • 突破光学成像局限:全视野光学血管造影技术新进展
  • 2.反向传播机制简述——大模型开发深度学习理论基础
  • 机器学习校招面经二
  • Spring Boot如何利用Twilio Verify 发送验证码短信?
  • 毕业项目推荐:基于yolov8/yolo11的苹果叶片病害检测识别系统(python+卷积神经网络)
  • Linux的用户与权限--第二天
  • 【Flink银行反欺诈系统设计方案】1.短时间内多次大额交易场景的flink与cep的实现
  • HashMap的table数组何时初始化?默认容量和扩容阈值是多少?
  • 基于CURL命令封装的JAVA通用HTTP工具
  • docker学习笔记(1)从安装docker到使用Portainer部署容器
  • 数据集/API 笔记:新加坡PSI(空气污染指数)API
  • 计算机网络数据传输探秘:包裹如何在数字世界旅行?
  • 笔记:代码随想录算法训练营day36:LeetCode1049. 最后一块石头的重量 II、494. 目标和、474.一和零