一、前期准备
1.首先在官网下载并安装好visual stdio code
2. 因为vscode只是一个代码编辑器,没有自带有C/C++的编译器,因此我们需要安装一个C/C++编译器,打开终端依次输入下面的命令,确保安装好gcc/g++和gdb
sudo apt-get update
[有密码则输入密码]
sudo apt-get install gcc
[有密码则输入密码]
sudo apt-get install g++
[有密码则输入密码]
sudo apt-get install gdb
[有密码则输入密码]
3. 安装必要的插件,打开vscode,点击左面竖排第五个按钮,搜索并安装上如下两个插件
- C/C++
- Code Runner
安装好以后重启一下vscode,为避免出现其他问题,先暂时不要安装其他插件界面给你推荐的插件
二、编译运行程序
编译运行程序将介绍两种方法
- 使用之前安装好的
Code Runner插件
一键编译运行程序 - 打开vscode的
集成终端
使用命令行编译和运行
点击:文件>新建文件,出现一个空白文档,我准备了一段测试用的代码,请复制粘贴到空白文档中
#include <stdio.h>
int main(){
int a=1,b=2;
printf("a+b= %d",a+b);
return 0;
}
然后按Ctrl+S并将文件后缀名改为.c
或.cpp
后保存到电脑上,然后点击右上角的三角形按钮(原本这个位置没有,是安装Code Runner插件后新增的一键编译运行程序的按钮),或者按Ctrl+Alt+N就能编译运行当前程序
这就是使用Code Runner插件运行程序的方法,点击右上角的垃圾桶图标可以直接结束程序运行
同时可以按ctrl+~打开集成终端在其中输入命令行指令来编译运行
下面开始正式配置调试环境
首先在电脑上你习惯的位置新建一个文件夹,用于存放编写的代码,接下来配置好的调试环境,仅会对存放在这一个文件夹以及文件夹的子目录里程序生效!
新建好文件夹后,在vscode界面,点击:文件>打开文件夹,打开刚刚新建的文件夹
再点击新建文件夹在打开的文件夹下新建一个 .vscode
文件夹(注意前面的"."号)
然后在.vscode文件夹下新建两个json文件分别叫做
- launch.json
- tasks.json
然后将下面的代码复制到对应的json文件中去并保存
launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "C/C++",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"preLaunchTask": "compile",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
tasks.json
如果需要是c语言
也就是gcc
将下面的command
项由g++
改为gcc
{
"version": "2.0.0",
"tasks": [{
"label": "compile",
"command": "g++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"problemMatcher": {
"owner": "cpp",
"fileLocation": [
"relative",
"${workspaceRoot}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
},
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
现在已经可以正常调试了
并且此时可以按 ctrl+shift+B 直接调用配置好的g++ task 编译程序而不运行程序,类似于一些IDE的编译选项
我的操作系统是UOS/Deepin V20