VSCode 配置 C 语言编程环境

目录

[一、下载 mingw64](#一、下载 mingw64)

二、配置环境变量

三、三个配置文件

四、格式化代码

1、安装插件

2、保存时自动格式化

[3、左 { 不换行](#3、左 { 不换行)


++上了两年大学,都还没花心思去搭建 C 语言编程环境,惭愧,惭愧。++

一、下载 mingw64

mingw64 是著名的 C/C++ 编译器 GCC 的 Windows 版本。

下载地址:MinGW-w64 - for 32 and 64 bit Windows download | SourceForge.net

① 进入网页后选择 Files 选项卡

② 往下划,找到最新版本的 mingw64,下载如下版本

③ 解压压缩包得到 mingw64 文件夹

mingw64 应该是一款绿色软件,安装和卸载的方法:下载文件夹和删除文件夹。

二、配置环境变量

① 右击 "此电脑",选择 "属性"(如果你没有 "此电脑" 图标,那就去资源管理器找)

② 高级系统设置 << 环境变量...(在右下角)<< Path(双击或选中后点击 "编辑" 打开)

③ 新建环境变量,填入你的 mingw64 文件夹下 bin 目录的路径(不要照着写!)

④ 打开 cmd,输入以下指令,测试环境变量是否生效

bash 复制代码
gcc -v

如下图所示,测试成功:

如果出现类似 "不认识 gcc" 的报错,那么可能是路径写错了或者需要重启一下电脑?

三、三个配置文件

在你放代码文件夹下创建一个名为 ".vscode" 的文件夹,并在其中创建三个文件:

  • c_cpp_properties.json
  • launch.json
  • tasks.json

c_cpp_properties.json

注意:把所有的 C:/Program Files/MinGW 换成你的 mingw64 所在目录的路径!

bash 复制代码
{
  "configurations": [
    {
      "name": "Win32",
      "includePath": [
        "${workspaceRoot}",
        "C:/Program Files/MinGW/mingw64/include/**",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
        "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
      ],
      "defines": [
        "_DEBUG",
        "UNICODE",
        "__GNUC__=6",
        "__cdecl=__attribute__((__cdecl__))"
      ],
      "intelliSenseMode": "msvc-x64",
      "browse": {
        "limitSymbolsToIncludedHeaders": true,
        "databaseFilename": "",
        "path": [
          "${workspaceRoot}",
          "C:/Program Files/MinGW/mingw64/include/**",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
          "C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
        ]
      }
    }
  ],
  "version": 4
}

launch.json

bash 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "(Windows) Launch",
      "type": "cppvsdbg",
      "request": "launch",
      "program": "cmd",
      "preLaunchTask": "echo",
      "args": [
        "/C",
        "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "&",
        "echo.",
        "&",
        "pause"
      ],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": []
    },
    {
      "name": "(gdb) Launch",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": true,
      "MIMode": "gdb",
      "miDebuggerPath": "C:\\Program Files\\MinGW\\mingw64\\bin\\gdb.exe", // 自己电脑的gdb
      "preLaunchTask": "echo", //这里和task.json的label相对应
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ]
    }
  ]
}

tasks.json

bash 复制代码
{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "label": "echo",
      "type": "shell",
      "command": "gcc",
      "args": [
        "-g",
        "${file}",
        "-o",
        "${fileBasenameNoExtension}.exe",
        "-fexec-charset=GBK" // 解决中文乱码
      ]
    }
  ],
  "presentation": {
    "echo": true,
    "reveal": "always",
    "focus": false,
    "panel": "new",
    "showReuseMessage": true,
    "clear": false
  }
}

四、格式化代码

1、安装插件

2、保存时自动格式化

  1. 依次点击 VSCode 左下角齿轮 << 设置,然后输入:Format On Save
  2. 勾选

3、左 { 不换行

  1. 依次点击 VSCode 左下角齿轮 << 设置,然后输入:C_Cpp: Clang_format_style
  2. 将默认的 file 改为:{BasedOnStyle: Chromium, IndentWidth: 4}

参考博客:

VSCode配置C语言环境_vscode c语言提示_青衫与白杉的博客-CSDN博客

VSCode 格式化 cpp 文件时配置左大括号不换行_vscode大括号不换行_云胡同学的博客-CSDN博客

相关推荐
2501_9160074720 小时前
Windows OpenSSL 生成 iOS 证书,制作 p12 与描述文件,KXBuild 签名实操
windows·vscode·ios·objective-c·个人开发·swift·敏捷流程
我要见SA姐11 天前
Chrome 内存泄漏诊断指南:从现象定位到根因排查
ide·vscode·python·自动化·编辑器
00后程序员张1 天前
Windows 开发 iOS App 入门,用 SwiftUI 写第一个 iOS App 装到 iPhone
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
瓶 盖1 天前
你的 IDE 插件改了 authorized_keys:Claude Code 扩展投毒链路拆解
ide·ssh·vs code·安全分析·供应链安全·claude code
香芋芋圆2 天前
iD-editor 详解|OSM官方在线编辑器,基于D3.js的轻量地图编辑器
开发语言·javascript·编辑器
qinglongcn2 天前
Agent 可能出什么事——五类异常与应对
人工智能·编辑器·ai编程
QianhangQianping2 天前
撤销重做不是「存快照」:一个可视化编辑器的Operation 设计
java·前端·数据库·typescript·编辑器·前端架构·撤销重做
Eiceblue2 天前
用 Python 给 Word 文档加水印:文字、图片与批量处理
开发语言·vscode·python·word
2501_915921432 天前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程
Lhan.zzZ2 天前
用 Qt 构建线程安全的通讯静态库:从线程亲和性到完整工程
c++·vscode·qt·tcp/ip·udp