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

vscode中如何配置c/c++环境

“批判他人总是想的太简单 剖析自己总是想的太困难”

文章目录

  • 前言
    • 文章有误敬请斧正 不胜感恩!
      • 一、准备工作
      • 二、安装 VSCode 插件
      • 三、配置 VSCode
        • 1. 配置编译任务(tasks.json)
        • 2. 配置调试器(launch.json)
      • 四、运行和调试
      • 五、常见问题与解决
  • 总结


前言

写在开始:

VS Code 是一款由微软开发的免费代码编辑器,支持多种编程语言,如 Python、JavaScript、C++、Go 等。它拥有丰富的插件市场,可以根据你的需求自由扩展功能,如语法高亮、代码补全、调试工具、Git 集成等,是开发者们的“神器”。
用VScode来写C/C++更加方便一点,不用下那么大的visualstudio.


文章有误敬请斧正 不胜感恩!

以下是本篇文章正文内容,


一、准备工作

  1. 安装 VSCode

    • 前往 VSCode 官网下载最新版本,并根据系统提示完成安装。
  2. 安装 C++ 编译器

    • Windows:推荐使用 MinGW-w64 作为 C++ 编译器。下载时选择 x86_64 版本以支持 64 位开发。

      • 安装时选择 mingw32-gcc-g++ 组件。
      • 完成安装后,将 MinGW 的 bin 目录(如 C:\mingw-w64\bin)添加到系统的环境变量 PATH 中:
        1. 打开“控制面板” -> “系统和安全” -> “系统”。
        2. 点击“高级系统设置” -> “环境变量”。
        3. 找到“系统变量”中的 Path,双击编辑,点击“新建”,然后输入 MinGW 的 bin 路径。
    • Linux:打开终端,输入以下命令安装 GCC:

      sudo apt-get update
      sudo apt-get install build-essential
      
    • macOS:在终端中输入以下命令安装 Xcode 命令行工具:

      xcode-select --install
      

二、安装 VSCode 插件

  1. C/C++ 插件

    • 打开 VSCode,点击左侧的扩展图标(或按 Ctrl+Shift+X)。
    • 搜索 C/C++,找到由 Microsoft 提供的插件,点击“安装”。
      在这里插入图片描述
  2. Code Runner 插件(可选)

    • 搜索并安装 Code Runner 插件。它可以通过右键菜单直接运行代码,是快速测试代码的好帮手。

三、配置 VSCode

VSCode 本身并没有自带的编译功能,所以我们需要设置编译和调试任务。

1. 配置编译任务(tasks.json)
  • 创建一个 C++ 文件,例如 main.cpp,写入以下简单代码:

    #include <iostream>int main() {std::cout << "Hello, World!" << std::endl;return 0;
    }
    
  • 按下 Ctrl+Shift+B,VSCode 会提示设置构建任务,选择 Create tasks.json file from template,然后选择 Others

  • 编辑生成的 tasks.json,使其看起来如下:

    {"version": "2.0.0","tasks": [{"label": "build","type": "shell","command": "g++","args": ["-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}.exe"],"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"],"detail": "Generated task by VS Code"}]
    }
    
  • 关键字段解释:

    • "command": "g++":使用 g++ 作为编译器。
    • "args":编译参数,-g 开启调试信息,${file} 表示当前文件,-o 用于指定输出文件名。
    • ${fileDirname}${fileBasenameNoExtension} 会自动根据当前文件路径和名称生成可执行文件。
2. 配置调试器(launch.json)
  • 按下 F5,VSCode 会提示配置调试器,选择 C++ (GDB/LLDB)

  • 在生成的 .vscode 目录下找到 launch.json 文件,修改如下:

    {"version": "0.2.0","configurations": [{"name": "g++ - 生成和调试活动文件","type": "cppdbg","request": "launch","program": "${fileDirname}/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": true,"MIMode": "gdb","setupCommands": [{"description": "启用 gdb 的漂亮打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "build","miDebuggerPath": "gdb","logging": { "engineLogging": true }}]
    }
    
  • 关键字段解释:

    • "program":指定运行的可执行文件路径。
    • "miDebuggerPath": "gdb":指定调试器的路径,Windows 用户确保 gdb 已安装。
    • "preLaunchTask": "build":调试前自动执行编译任务。

四、运行和调试

  1. 编译程序
    Ctrl+Shift+B 执行编译,检查终端是否输出“成功生成”的信息。

  2. 运行程序
    在终端直接输入生成的 .exe 文件名,或通过 Code Runner 插件右键运行。

  3. 调试程序
    F5 启动调试,可以添加断点(在代码行号左侧点击),观察变量值,单步执行。

五、常见问题与解决

  1. 编译错误:找不到 g++

    • 确保 MinGW-w64 的 bin 目录已正确添加到环境变量 PATH,并重启 VSCode。
  2. 调试时无法启动 gdb

    • 检查 launch.jsonmiDebuggerPath 是否正确,或尝试指定 gdb 的完整路径。
  3. 中文字符显示乱码

    • 编译时添加参数 -fexec-charset=GBK 可以解决 Windows 下的编码问题。

总结

以上就是在 VSCode 配置 C/C++ 环境的详细步骤。配置好环境才能顺利运行 C++ 代码,
还能进行debug,跟踪程序执行的每一步。
如果遇到问题,别忘了多看看编译和调试信息,这些是解决big的关键。
祝各位大佬编程愉快!


http://www.lryc.cn/news/439955.html

相关文章:

  • 【梯度消失|梯度爆炸】Vanishing Gradient|Exploding Gradient——为什么我的卷积神经网络会不好呢?
  • MAC 地址简化概念(有线 MAC 地址、无线 MAC 地址、MAC 地址的随机化)
  • SQL_yog安装和使用演示--mysql三层结构
  • 蓝桥杯-STM32G431RBT6(解决LCD与LED引脚冲突的问题)
  • ESP-01S,ESP8266设置客户端透传模式
  • NFT Insider #147:Sandbox 人物化身九月奖励上线;Catizen 付费用户突破百万
  • 103.WEB渗透测试-信息收集-FOFA语法(3)
  • SpringDataJPA基础增删改查
  • 好代码网同款wordpress主题,完全开源无加密可二开
  • 如何在@GenericGenerator中显式指定schema
  • 感知器神经网络
  • 【C++】——继承详解
  • RocketMQ 消费方式
  • 初始爬虫7
  • 深入理解Appium定位策略与元素交互
  • java基础面试题总结
  • Typescript 的类型断言
  • 【设计模式】单例模式详解及应用实例
  • 学习图解算法 使用C语言
  • 基于Netty实现TCP客户端:封装断线重连、连接保持
  • 基于形状记忆聚合物的折纸超结构
  • 前端用html写excel文件直接打开
  • FastText 和 Faiss 的初探了解
  • 微服务保护学习笔记(五)Sentinel授权规则、获取origin、自定义异常结果、规则持久化
  • YOLOv8目标检测模型——遥感小目标检测经验分享
  • 构建响应式 Web 应用:Vue.js 基础指南
  • 计算机毕业设计选题推荐-在线投票系统-Java/Python项目实战
  • 【C/C++】程序的构建(编译)过程概述
  • ElasticSearch-2-核心语法集群高可用实战-Week2
  • STM的CAN通信学习