VS code之C/C++编译旅程

C/C++编译

一、安装编译器(MinGW-w64)


1. 下载与安装

  1. 64位下载MinGW-w64 x86_64

  2. 解压到 新目录 (如 D:\mingw64,路径禁止中文/空格)

2. 配置环境变量

  1. 系统变量 → Path → 新增: 例:D:\mingw64\bin
  2. 验证 :命令行输入 gcc --versiong++ --version,显示版本号即成功

二、编译配置与运行


1. 单文件单独编译

1.1 首文件
  1. 新建 main.c,代码:

    c 复制代码
    例:  
    #include <stdio.h>  
    int main() 
    {
      printf("C单文件编译成功!\n"); 
    }  

    新建 main.cpp,代码:

    c 复制代码
    例:  
    #include <stdio.h>  
    int main() 
    {  
    printf("C单文件编译成功!\n");  
    }  
  2. C/C++插件配置

  3. 创建执行任务(tasks.json)

  • 自动生成 tasks.json(配置清单与项目的中间商):

    json 复制代码
    {​
      "version": "2.0.0",​
      "tasks": [​
          {​
              "type": "cppbuild",​
              "label": "C/C++: gcc.exe 生成活动文件",​
              "command": "C:/mingw64/bin/gcc.exe",    //这里是指定编译器​
              "args": [​
                  "-fdiagnostics-color=always",​
                  "-g",​
                  "${file}", //被编译的文件​
                  "-o",​
                  "${fileDirname}\\${fileBasenameNoExtension}.exe"
                  //指定生成的可执行文件的路径(默认鼠标所在文件路径)​
              ],​
              "options": {​
                  "cwd": "C:/mingw64/bin"​
              },​
              "problemMatcher": [​
                  "$gcc"​
              ],​
              "group": "build",​
              "detail": "编译器: C:/mingw64/bin/gcc.exe"​
          }​
      ]​
    }
  1. 运行生成任务

Ctrl+`:打开终端窗口

1.2 新增文件

当需要添加新代码文件时,可根据代码管理需求选择以下两种方式:

方法1:在当前项目中直接新建文件

适用场景:新增文件与现有文件属于同一项目,无需单独文件夹管理。

方法2:新建独立文件夹以管理代码

适用场景:新增代码需独立管理(如不同项目、版本或模块)。

  1. 创建新文件夹

    • 在磁盘中新建文件夹(如 test)→ 打开VSCode → 点击 【文件】→【打开文件夹】 选择新文件夹。
  2. 复制配置文件

    • 将原项目中 .vscode 目录(含 tasks.jsonc_cpp_properties.json 等)拷贝到新文件夹中。
  3. 新建、编写、执行
    详见 '1.1首文件'

2. 多文件联合编译

适用场景 :项目包含多个源文件(如 main.c + utils.c),需编译为一个可执行程序。

  1. 打开工程文件夹

    • 在VSCode中点击 【文件】→【打开文件夹】 ,选择 multiple_files 目录。
  2. 复用旧项目配置

    • 拷贝旧项目中 .vscode 文件夹(含 tasks.jsonc_cpp_properties.json 等)到当前工程根目录。
  3. 改造 tasks.json 配置

    • 目标 :编译所有 .c 文件,统一生成可执行程序。

    • 关键修改

      json 复制代码
      "args": [  
        "-g",  
        "${workspaceFolder}\\*.c",   // 匹配工作区所有 .c 文件 
        "-o",  
        "${workspaceFolder}\\${workspaceRootFolderName}.exe"  // 动态获取工作区文件夹名  
        // "${workspaceFolder}\\myProgram.exe"  固定输出自定义文件名 
      ]  
      json 复制代码
      "args": [  
        "-g",  
        "${workspaceFolder}\\*.cpp",  // 匹配工作区所有 .cpp 文件 
        "-o",  
        "${workspaceFolder}\\${workspaceRootFolderName}.exe"  // 动态获取工作区文件夹名  
         // "${workspaceFolder}\\myProgram.exe"  固定输出自定义文件名 
      ]  
  4. 新建、编写、执行
    详见 '1.1首文件'

三、调试配置(launch.json)


1. 创建launch.json文件

  1. 打开调试面板

    • 点击VSCode左侧的调试图标(或使用快捷键Ctrl+Shift+D),点击"创建launch.json文件"。
  2. 选择调试配置

    • 在弹出的选项中选择 【C++(GDB/LLDB)】
  3. 添加调试配置

    • 生成launch.json文件后,点击文件右下方的 【添加配置】 ,选择 【C/C++:(gdb)启动】

2. 配置launch.json文件

  • 默认配置:

    json 复制代码
    {  
        "name": "C/C++: (gdb) 启动",  
        "type": "cppdbg",  
        "request": "launch",  
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",  
        "args": [],  
        "stopAtEntry": false,  
        "cwd": "${workspaceFolder}",  
        "environment": [],  
        "externalConsole": false,  
        "MIMode": "gdb",  
        "miDebuggerPath": "gdb"  
    }  
  • 修改配置:

    json 复制代码
    {  
        "name": "C/C++: (gdb) 启动",  
        "type": "cppdbg",  
        "request": "launch",  
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", 
        //指定可执行程序路径:确保与 tasks.json 中生成的可执行文件路径匹配。  
        "args": [],  
        "stopAtEntry": false,  
        "cwd": "${workspaceFolder}",  
        "environment": [],  
        "externalConsole": false,  
        "MIMode": "gdb",  
        "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe" 
        //指定调试器路径:修改为实际的调试器路径,需根据实际安装路径调整。
    }  
    json 复制代码
    {  
        "name": "C/C++: (gdb) 启动",  
        "type": "cppdbg",  
        "request": "launch",  
        "program": "${workspaceFolder}\\${workspaceRootFolderName}.exe", 
        //指定可执行程序路径:确保与 tasks.json 中生成的可执行文件路径匹配。  
        "args": [],  
        "stopAtEntry": false,  
        "cwd": "${workspaceFolder}",  
        "environment": [],  
        "externalConsole": false,  
        "MIMode": "gdb",  
        "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe" 
        //指定调试器路径:修改为实际的调试器路径,需根据实际安装路径调整。
    }  

3. 开始调试

launch.json文件配置完成后,即可开始调试:

  1. 设置断点

    • 在代码行号左侧单击或使用快捷键 F9 插入断点。
  2. 启动调试

    • F5 开始调试,程序会在断点处暂停。
  3. 调试快捷键

    • F10:逐过程调试(跳过函数内部)
    • F11:逐语句调试(进入函数内部)
  4. 查看调试信息:启动调试后,可通过监视窗口查看变量值、调用栈等程序执行过程中的信息。

相关推荐
逆境清醒2 天前
VS Code配置Python开发环境系列(1)___VScode的安装 ,VScode常用快捷键
vscode·python·visual studio code
星如雨落3 天前
Linux VScode 安装PHP环境
linux·php·visual studio code
简小瑞9 天前
VSCode 源码解密:一个"无用"属性背后的精妙设计
typescript·visual studio code
星光不问赶路人10 天前
project references在tsserver内工作流程
typescript·visual studio code
珊瑚礁的猪猪侠17 天前
ADB使用指南
python·adb·visual studio code
瑶琴AI前端22 天前
【零成本高效编程】VS Code必装的5款免费AI插件,开发效率飙升!
前端·ai编程·visual studio code
LIUENG24 天前
快速开发一个 VSCode 插件
前端·visual studio code
996终结者1 个月前
同类软件对比(四):Jupyter vs PyCharm vs VS Code:Python开发工具终极选择指南
vscode·python·jupyter·pycharm·visual studio code
BD1 个月前
I18n Fast:一个彻底解决了国际化项目痛点的 VSCode 插件
visual studio code
moshuying1 个月前
🚀 从零到一:打造你的VSCode圈复杂度分析插件
visual studio code·cursor