vscode 开发c环境

前置条件:

1.vscode安装C/C++ Extension Pack扩展

2.安装gcc或者clang开发环境

在工程**.vscode**目录下创建task任务文件

tasks.json

javascript 复制代码
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "build",
            "command": "/usr/bin/clang",
            "args": [
                "-fcolor-diagnostics",
                "-fansi-escape-codes",
                "-g",
                "main.c",
                "-o",
                "${cwd}/main"
            ],
            "options": {
                "cwd": "${cwd}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

其中"command": "/usr/bin/clang",可以换成对应的c编译器,比如gcc

在工程**.vscode**目录下创建运行文件

launch.json

javascript 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "run",
            "type": "cppdbg",
            "request": "launch",
            "program": "${cwd}/main",
            "args": [],
            "stopAtEntry": false,
            "cwd": "./",
            "environment": [],
            "externalConsole": false,
            "MIMode": "lldb"
        }
    ]
}

"program": "${cwd}/main", main为task任务中编译后的-o输出文件

"MIMode": "lldb",选择对应的c调试器,比如gdb

运行步骤:

  1. 依次选择菜单 <终端> ----- <运行任务> ,任务名对应task中的label值;

  2. 依次选择菜单 <运行> ----- <启动调试> ,可以对源码打断点调试;

相关推荐
wWYy.25 分钟前
C++与C的区别
c语言·c++
LuminousCPP1 小时前
数据结构‑二叉树(二):二叉堆从零实现|Heap结构设计 + 建堆优化 + 堆排序深度解析
c语言·数据结构·笔记·二叉树
程序员与背包客_CoderZ5 小时前
高性能分布式KV存储引擎RocksDB入门与C/C++编码实战
c语言·开发语言·数据库·c++·分布式·分布式数据库·rocksdb
william_yangshun5 小时前
【大模型部署实战】kimi-k3-in-c 中文版:用 176KB 纯 C99 引擎在 CPU 上跑 Kimi K3 上手指南
c语言·开发语言
Yyyyyy~7 小时前
【C语言】数据类型和变量【下】
c语言
on_pluto_7 小时前
【debug】vscode 和 codex 不兼容问题
ide·人工智能·vscode·编辑器
阿鹿.7 小时前
Claude code
vscode
小雪崩8 小时前
嵌入式学习 day30:minilog
linux·c语言·学习
pan_junbiao11 小时前
Visual Studio Code的应用:笔记
vscode
一杯原谅绿茶11 小时前
VSCode的Eclipse插件-编译Eclipse项目
ide·vscode·eclipse