VScode搭建C/C++工程环境

简介

        由于在参考网上搭建环境中,从来都没有真的成功过,今天在b站上看到一个up的教程,搭建成功了,因此写一遍博文记录。

up连接如下:

8.配置C++运行和调试环境_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV19c411G7ey/?p=8&spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=fb93fa2a7dc6a76fa87aedb0877b0b68

Vscode只是文本编辑器,没有编译器,但是可以安装插件和添加编译器路径,这样我们就能将一个文本编辑器合成一个集成开发环境了。如codeblocks这样,编码、阅读、编译、调试一体的软件了。

一、需要安装的软件:①vscode 、②mingw

二、在vscode中配置C/C++环境

①在扩展区安装汉化包、和C/C++扩展包。vscode默认是英文的,安装这两个插件是为了方面看代码,不安装也可以。C/C++的插件,后面写了代码会提示让你安装的。

②自己在桌面或者其他地方新建一个文件夹,用来存放我们的代码。我在桌面新建test文件夹

在vscode中:  文件->打开文件夹,打开我们刚刚建立的test文件夹。

③在test目录下新建main.c文件,main是文件名,取英文名字即可,随便取名,不能有中文,后缀名.c表示是c语言文件,.cpp表示是c++文件,这里以C语言为例。

④写入测试代码,点击右上角小虫子运行,暂时不调试。点击运行后会在左边生成tasks.json文件。

⑤代码运行结果

⑥这时候对单个文件编译和调试均可以,但是想要自己建立头文件还不行,编译和调试还不行,这时候需要对tasks.json和launch.json文件。如果没有自动生成.launch.json文件,如下创建:

⑦点击添加配置,启动gdb调试器

⑧tasks.json:指定gcc编译器路径,指定编译当前工作空间下的所有c源文件,指定生成的可执行文件名。修改如下备注的地方,Ctrl+/可以快速屏蔽代码,如果是C++,gcc.exe要改成g++.exe。

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "D:\\tools\\GCC\\MinGW\\bin\\gcc.exe",//刚刚安装的mingw中gcc编译器的路径
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                // "${file}",编译当前文件名,改为*.c编译工作目录下所有.c文件
                "*.c",//工作目录下所有.c文件
                "-o",
                // "${fileDirname}\\${fileBasenameNoExtension}.exe"编译后生成的可执行文件名
                "${fileDirname}\\a.exe"//改为生成a.exe,复制到launch中"program"下
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

⑨launch.json配置,指定gdb调试器路径,和task.json中定义的可执行文件名。

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            // "program": "输入程序名称,例如 ${workspaceFolder}/a.exe",//在tasks.json中配置的可执行文件名,
            "program": "${fileDirname}\\a.exe",//tasks.json的"args"下复制过来的可执行文件名
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            // "miDebuggerPath": "/path/to/gdb",//木子备注:指定刚刚安装的minggw中的gdb调试器路径
            "miDebuggerPath": "D:\\tools\\GCC\\MinGW\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }


    ]
}

10.自己添加头文件,测试如下,通过

总结:

原来没有搞懂tasks.json和launch.json文件的作用。

tasks.json指定编译器gcc.exe或者g++.exe的路径,指定要编译的源文件,指定编译生成的可执行文件名。

launch.json:指定调试器gdb.exe(c和c++一样)的路径,需要指定tasks.json中设置的可执行文件名。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值