Vscode 全称Visual Studio Code,是一款由微软开发且跨平台的免费源代码编辑器,可选择Windows、Linux、macOS的不同系统对应安装。该软件支持语法高亮、代码自动补全、代码重构、查看定义功能,并且内置了命令行工具和 Git 版本控制系统。用户可以更改主题和键盘快捷方式实现个性化设置,也可以通过内置的扩展程序商店安装扩展以拓展软件功能,VSCode 使用 Monaco Editor 作为其底层的代码编辑器。
VSCode 默认支持多种编程语言,包括 JavaScript、TypeScript、CSS 和 HTML;也可以通过下载扩展支持 Python、C/C++、Java 和 Go 在内的其他语言,对于部分语言可以使用 IntelliSense。它也支持调试 Node.js 程序,和 GitHub 的 Atom一样,VSCode 也基于 Electron 框架构建。它还支持同时打开多个目录,并将信息保存在工作区中以便复用,允许用户更改文件的代码页、换行符和编程语言等。
作为跨平台的编辑器,它也是最受开发者欢迎的开发环境。
但是从本质上而言,Vscode和记事本对于程序而言并无两样,都是一种文本编辑器而已,只是Vscode中集成了很多方便的功能。这里是说明Vscode并不是编译器,单凭Vscode是不可以直接对程序进行编译执行的,还需要搭配相应的语言编译环境才可以进行代码的编译和执行。本文是用于指导如何在Vscode里面配置C/C++的编译环境。
1. 准备工作
如果由于需要科学上网的原因无法下载,我将所有的安装的package都已经放到了云盘上,自行下载。
云盘链接 密码:c163
-
安装软件:Visual Studio Code:点击进入官网下载
安装时一定要注意把所有的方框都选中,其中可以直接添加System Path 和 在资源管理器中出现“通过用code打开”,这样很方便。
-
C/C++编译器:MinGW-w64,这里针对Windows系统采用的是MinGW-w64编译器,对于Linux和Macos安装gcc编译器应该只需要在terminal一行指令就可以解决了。
- 下载:点击进入下载页面
- 下载之后将压缩包进行解压到相应的位置,这里向大家推荐一下我的管理电脑的方法,大家可以在D盘(非系统盘)上建一个文件夹用来存放开发者用的环境文件,方便以后查询,不要一股脑都放在C盘。
-
将文件解压到这里,解压后的文件名后缀有很长,建议删除,命名为mingw64足矣。
-
然后需要在系统环境变量中添加mingw编译器,添加环境变量这个操作对于初学者可能不太熟悉,但是这个操作在以后的技术学习中会经常用到。
方式一:点击**“设置”->选择“系统**->选择最下面的**“关于”->选择右边的"高级系统设置"**
方式二:右击**”此电脑“->选择”属性“->选择右边的"高级系统设置"**
- 点击**“环境变量”**
- 在**“系统变量”中找到“Path”,点击“Path”**
-
点击**“新建”** ,在最下面输入刚才你解压的文件中的bin文件夹的地址
比如我的就是下图中的,因为我放在了Dev_Environment文件夹中
然后最后一路确定。
- 最终判断是否已经完成了编译器的安装,按住win(在ctrl和alt之间)+R键,输入cmd
- 回车,在弹出的cmd窗口中输入
gcc -v
,出现如下图所示就表示安装成功。
2. 配置Vscode
- 个人建议新建一个Code文件夹专门用于存放相应的代码,再根据语言分开,比如如图中的CPP、Python等。
在CPP文件中右击,点击“通过Code打开”,就可以用Vscode打开该文件夹。
- 安装VsCode插件,点击如图,在上面搜索以下插件,并安装(名字一模一样)。
- Chines(Simplified):简体中文插件,这个应该现在Vscode在第一次打开时会自动检测你的语言然后会提示你安装,如果没安装的同学可以搜索一下,然后安装,英文大佬除外。
- C/C++
- Code Runner
安装之后重启,界面就会切换成中文。
3. 编译运行程序
编译运行程序介绍两种方法
- 使用之前安装好的
Code Runner插件
一键编译运行程序 - 打开vscode的
集成终端
使用命令行编译和运行
-
点击:文件>新建文件,出现一个空白文档,将下面的代码复制粘贴到空白文档中
#include <stdio.h> int main(){ printf("Hello World!"); }
然后按Ctrl+S
**将文件后缀名改为.c
或.cpp
**后保存到电脑上,然后点右上角的三角形按钮
不出意外应该会出现乱码。
- 接下来一次依次打开:文件>首选项>设置>用户>拓展>Run Code Configuration,找到**
Run In Terminal
**勾选上。
此时再重启Vscode,再点击程序右上角的三角形,选择**“Run code”**
现在程序已经可以正常运行了,此时程序是运行在vscode的集成终端上,并不会额外弹出一个外部窗口。点击右上角的垃圾桶图标可以直接结束程序运行并关闭集成终端
如果需要额外弹出窗口,就像Dev/Code Blocks那样,需要采取下面的步骤,换用另外的插件。
- (补充)编译运行C/C++也可以选择
C/C++ Compile Run
插件,按f6一键运行,可以选择像Dev/Code Blocks一样弹出外部窗口。
相较于code runner
,C/C++ Compile Run
插件在勾选上:**文件>首选项>设置>扩展>Compile Run Configuration的Run-in-external-terminal
**选项后可以出现和dev / codeblocks一样的外部窗口
这样在程序界面按F6就会出现类似于Dev/Code Blocks的效果。
这样基本算是已经配完了,接下来介绍如何进行设置断点进行调试Debug。
4. 调试程序
在Dev 和Code Blocks中都具有这样的功能就是可以进行设置断点然后进行单步调试,从而发现错误。
注意:不要有中文路径,比如你在名为数据的文件夹下新建的Code,这样路径就是D:\数据\Code这样就不行。
-
首先我们要在当前文件夹下新建一个文件夹名为
.vscode
注意前面有个.
-
在其中分别新建两个文件:
launch.json
tasks.json
填写内容分别如下:
-
lauch.json
{ "version": "0.2.0", "configurations": [ { "name": "C/C++", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, "MIMode": "gdb", "miDebuggerPath": "gdb.exe", "preLaunchTask": "compile", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], }, ] }
-
tasks.json
{ "version": "2.0.0", "tasks": [ { "type": "shell", "label": "compile", "command": "g++", "args": [ "-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe" ], "problemMatcher": [ "$gcc" ], "group": { "kind": "build", "isDefault": true } } ] }
-
- 在代码前面设置断点,表示你想在哪个地方停止运行
- 按F5启动调试,出现如图的两个标志就说明成功了。
顶部六个按钮分别代表
- 继续执行到下一个断点处
- 执行下一条语句,遇到函数直接执行完不会跳转进函数
- 执行下一条语句,遇到函数会跳转进函数继续单步执行
- 跳出当前所在的函数,如果是主函数会结束程序
- 重新启动调试
- 结束调试
集成终端在底部终端栏输入数据,如果是希望像vs2019一样,启动调试后显示外部窗口而不是在vscode集成终端进行调试
只需将launch.json
中的"externalConsole"
后面的值由false改为true
结语
到现在,Windows系统下Vscode+Cpp环境基本上已经配完了。感谢阅读
后期我会出(由于科研压力巨大,虽迟但到!)系列文章和视频,欢迎关注!
- 《Vscode+Anaconda环境》
- 《如何美化自己的Vscode,做一个酷酷的极客》
- 《如何充分利用Zotero轻松读论文》
- 《如何拥有属于自己的代码仓库》
- 《听说还有人不会搭建自己的博客网站?》
欢迎前往我的个人博客网站:mathscode.github.io 获取更多学习资源。