关于使用vscode搭建c/c++编程环境

目录

关于使用vscode搭建c/c++编程环境

一、前言

一直觉得vscode是生产强有力的生产工具,基于此,做一篇学习笔记进行记录。

二、安装 IDE

访问[vscode官网](Visual Studio Code - Code Editing. Redefined)

根据操作系统选择相应版本的 VS Code 进行下载和安装。

二、安装TDM-GCC安装

访问:

[TDM-GCC安装](Download | tdm-gcc (jmeubank.github.io))

选中

下载完对应的资源之后,傻瓜式安装即可。TDM-GCC会自动加入环境变量。

三、安装C/C++环境

  1. Windows 系统需要安装 MinGW配置教程);MacOS 自带 Clang ,无须安装。
  2. 在 VS Code 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。

四、编写代码并进行编译

我这里是打开一个了已有的代码,编写完成之后,配置一下对应的launch.json文件,launch.json文件是用来配置和自定义调试会话的关键。

launch.json的内容如下:

{
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\TDM-GCC-64\\bin\\gdb.exe",
            
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            // "preLaunchTask": "C/C++: g++.exe 生成活动文件",
        }
    ],
    "version": "2.0.0"
}

在弄一个tasks.json的文件,内容如下:

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "C:\\TDM-GCC-64\\bin\\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "gdb调试器生成的任务。"
        },
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "C:\\TDM-GCC-64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "gdb调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

其中对应的路径文件需要根据自己电脑安装的路径进行替换,我一般使用Everything来进行搜索一下,可以快速找到对应的gdb.exe路径用来进行替换

设置好了之后,最终 Vscode 工程目录结构如下,测试代码来自 hello-algo,在此感谢大佬 @Krahets

其他文件省略展示

打开一个.c的文件,进行调试:

打开一个.cpp的文件,进行调试看看:

经过实验,可以进行调试输出,是一次成功的实践。

有时候打开别人的代码时,看到中文乱码,我这也一并进行记录一下,方便后期查阅,打开设置按键,找到编辑器,找到文本,找到Encoding的选项,进行选择。

本文完!!

相关推荐
爱吃西瓜的小菜鸡13 分钟前
【C语言】判断回文
c语言·学习·算法
别NULL15 分钟前
机试题——疯长的草
数据结构·c++·算法
CYBEREXP20081 小时前
MacOS M3源代码编译Qt6.8.1
c++·qt·macos
yuanbenshidiaos2 小时前
c++------------------函数
开发语言·c++
yuanbenshidiaos2 小时前
C++----------函数的调用机制
java·c++·算法
tianmu_sama2 小时前
[Effective C++]条款38-39 复合和private继承
开发语言·c++
羚羊角uou2 小时前
【C++】优先级队列以及仿函数
开发语言·c++
姚先生972 小时前
LeetCode 54. 螺旋矩阵 (C++实现)
c++·leetcode·矩阵
FeboReigns2 小时前
C++简明教程(文章要求学过一点C语言)(1)
c语言·开发语言·c++
FeboReigns3 小时前
C++简明教程(文章要求学过一点C语言)(2)
c语言·开发语言·c++