Vscode配置C++环境
(终于申请博客了qaq)
之前用了那么久Dev-C++,总算换了一个编辑器,Visual Studio Code (Vscode)。
界面可比以前的舒适多了。

Vscode作为一款功能极其丰富的开发工具,其实配置也要麻烦一些,前几天折腾了好一会才配置好,这里简单的总结分享一下。
这是大纲:
- 下载和安装
- 配置编译器
- 配置环境文件
- 解决include path的问题
- 使用code-runner编译中文路径
- 颜色和主题
1.下载和安装
首先下载不用说,去官网上选择Download就好了,安装过程很简单

2.配置编译器
安装完之后,需要去配置编译器
我是直接使用的Dev-C++里的MinGW
之前没有的话去官网http://www.mingw.org/下一个
打开控制面板->系统与安全->系统->左侧栏里的“高级系统设置”
在系统属性“高级”一栏下方,打开环境变量

选中图中的Path变量点击编辑,将下好的或者已经有的MinGW的路径复制进去,精确到bin文件夹,注意不要覆盖以前的路径,如果有别的路径,要在其后加上分号分隔,然后粘贴。

弄好以后,在cmd中输入g++,回车
如果返回的是
g++: fatal error: no input files
compilation terminated.
那就是配置好了。
3.配置环境文件
接下来在Vscode里下载一些必备的插件
在Extensions搜索C/C++ 和 C++ Intellisense并下载

下好以后,打开你常用放代码的文件夹,选择任意一份代码打开,
在Run界面中点击"create a launch.json file"

它会自动弹出Select Environment,在选项中选择C++ (GDC/LLDB),并继续选择“g++.exe - 生成和调试活动文件”。

随后会弹出一个launch.json文件,要将其中的"externalConsole"设为true

此时Vscode会在你打开的文件夹下方新建一个.vscode的文件夹,里面是配置文件
4.解决include path的问题
返回cpp文件,如果这时#include头文件下方有波浪线,将鼠标移到波浪线下方,有如下图的提示

这时ctrl+shift+p打开搜索界面,找到C/C++: Edit Configurations (UI)

我们要在“包含路径”下方添加路径。

在cmd中输入指令"g++ -v -E -x c++ -"查看g++ include路径

将图中红线标出来的部分复制到包含路径里,保留原先的"${workspaceFolder}/**"

回到cpp界面,波浪线应该就消失了。
按F5调试运行代码,用惯Dev-C++的人发现终端一闪而过可能会很迷惑
这是因为Dev-c++在运行程序时会自动帮你加上system("pause"),使终端运行完毕后暂停
在这里手动加上就好了

5.使用code-runner编译中文路径
但是事情还并没有结束
有些人命名文件的习惯不大好,可能会收获这样的界面

这就是MinGW gdb.exe调试程序的万年大坑——不支持中文路径。
网上有些博客说可以通过更改Windows系统字符编码解决,但是好像只有Win10可以这么干,当时评论区里的反馈好像会导致其它界面乱码,反正我Win8的笔记本做不到。
这种情况有另外一个解决办法:不用gdb调试,我们用code-runner编译代码。
code-runner需要c++ clang编译器的支持,下载网址在这里:http://clang.llvm.org/。
安装完后环境变量设置同上。
在Extensions中安装C/C++ Clang Command Adapter和Code Runner。

下好后你会发现Vscode右上角多了运行的图标(就是那个三角形,我刚开始截图的时候忘删了,所以一直都有)
现在点击左下角齿轮打开Settings,
在Extensions->Run Code configuration里找到这两个设置并把它们勾上,修改过的设置左侧会出现竖线。

回到cpp界面,点击三角形图标运行,就可以发现没有问题了

当然如果你的命名想再随意一点,像文章最开始的那样既有中文还有空格和特殊符号,那还需要再改一些东西。
在Run Code configuration设置里找到Executor Map,打开settings.json,
在cpp一栏的编译命令中在文件名两旁加上\",看图

如果没有加双引号,g++会将带有空格或"."等特殊符号的文件当成好几个文件,造成一些奇怪的错误。
编辑文件后保存,所有cpp代码就都可以运行了。
6.颜色和主题
Vscode有大量好看的主题可供选择,
你可能就发现了我的界面和新装的Vscode界面颜色等不大一样。
在Vscode左下角的齿轮中,可以看到 "Color Theme",这里有很多主题选项。还有更多的主题在Extensions里面,
个人极度推荐Monokai Pro里的Classic配色(就是现在用的这个啦)


Vscode配置C++环境的更多相关文章
- VSCode配置c++环境简单教程
VSCode配置c++环境简单教程 1.下载MinGW 安装有关gdb,gcc,g++的所有包 2.文件夹 打开一个文件夹 在里面随便写一个cpp 不管是VS还是VSCode,它的基本操作单位都是文件 ...
- VS Code + MinGW + Clang + OpenGL (vscode 配置 opengl环境)
vscode配置opengl环境会遇到一些问题,这里是在看了一些博文之后给出的一篇完整的可行的配置 首先,要配置C++环境,网上有很多完整的配置C++环境的教程,这里就引用一条 https://www ...
- VScode 配置 C++ 环境进行编译和调试
这里记录为 VScode 配置 C++ 环境的简单步骤,实践环境为 Ubuntu 18.04 ,VScode 1.27 .在 Ubuntu 环境下,系统默认安装 gcc 和 g++ 编译器,故而下列步 ...
- vscode 配置 c++ 环境
vscode 配置 c++ 环境 参考的这篇bloghttps://blog.csdn.net/bat67/article/details/81268581 1.安装编译器.这里安装 codebloc ...
- Win10下 VSCode配置LaTex环境
------------恢复内容开始------------ 环境:win10 软件:Tex Live, VSCode ,Sumatra Tex Live官网下载速度很慢,所以推荐使用清华镜像下载链接 ...
- [Go] vscode配置Go环境
首先要先把环境变量配置好,配置好环境变量打开go文件的时候,会自动提示需要安装的扩展在/root/.profile和/home/当前用户/.profile都加上 export GOPATH=/var/ ...
- VsCode配置go环境及插件安装
在vscode中安装go插件. 安装git. 在%GOPATH%\src\目录下,建立golang.org文件夹,并再新建x文件夹. 目录为 "%GOPATH\src\golang.org\ ...
- vscode配置python环境-运行调试-windows环境
官方文件介绍 https://code.visualstudio.com/docs/languages/python 准备: vscode下载安装 python3版本下载(安装时可以选择添加环境变量, ...
- VScode 配置c++环境
参考 https://code.visualstudio.com/docs/cpp/config-mingw https://zhuanlan.zhihu.com/p/77645306 主要 http ...
随机推荐
- Python 3爬虫、数据清洗与可视化实战PDF高清完整版免费下载|百度云盘
百度云盘:Python 3爬虫.数据清洗与可视化实战PDF高清完整版免费下载 提取码: 内容简介 <Python 3爬虫.数据清洗与可视化实战>是一本通过实战教初学者学习采集数据.清洗和组 ...
- 前端学习(十三):CSS盒子模型
进击のpython ***** 前端学习--CSS盒子模型 在前面的时候也说过,包括分析网页结构的时候,提到了,网页就其实就是一个一个盒子叠起来的 那现在就是有装饰的盒子,难度就变得深刻 所以说为了能 ...
- springboot整合邮件发送(163邮箱发送为例)
先登录163邮箱获取授权 勾选后安装提示会叫你设置授权密码之类的:记住授权的密码 1.引入maven依赖 <dependency> <groupId>org.springfr ...
- Django学习路21_views函数中定义字典及html中使用类实例对象的属性及方法
创建 app6 在项目的 settings 中进行注册 INSTALLED_APPS 里面添加 'app6.apps.App6Config' 在 app6 的models.py 中创建数据表 clas ...
- PHP is_callable() 函数
is_callable() 函数用于检测函数在当前环境中是否可调用.高佣联盟 www.cgewang.com is_callable() 函数验证变量的内容能否作为函数调用. 这可以检查包含有效函数名 ...
- PHP srand() 函数
实例 播种随机数生成器: <?phpsrand(mktime());echo(rand());?>高佣联盟 www.cgewang.com 定义和用法 srand() 函数播种随机数生成器 ...
- 5.15 牛客挑战赛40 E 小V和gcd树 树链剖分 主席树 树状数组 根号分治
LINK:小V和gcd树 时限是8s 所以当时好多nq的暴力都能跑过. 考虑每次询问暴力 跳父亲 这样是nq的 4e8左右 随便过. 不过每次跳到某个点的时候需要得到边权 如果直接暴力gcd的话 nq ...
- x86架构:保护模式下利用中断实现抢占式多任务运行
站在用户角度考虑,一个合格的操作系统即使在单核下也能 "同时" 执行多个任务,这就要求CPU以非常快的频率在不同任务之间切换,让普通人根本感觉不到任务的切换.windwo ...
- 改变对象的字符串显示__str__repr
改变对象的字符串显示 # l=list('hello') # # print(l) # file=open('test.txt','w') # print(file) class Foo: def _ ...
- 深入学习JDK源码系列之、ArrayList
前言 JDK源码解析系列文章,都是基于JDK8分析的,虽然JDK15马上要出来了,但是JDK8我还不会,我... 类图 实现了RandomAccess接口,可以随机访问 实现了Cloneable接口, ...