【C++】VS Code配置
0.前言
本文已配置C++环境为例,本文主要是面向刚开始接触VS Code的朋友,采用生成默认配置任务的方法,在编写本文过程中大量参考了官方文档,感兴趣的朋友可直接前往传送门。
环境: win10 + VS Code 1.43.1
官方下载地址:https://code.visualstudio.com/
官方文档传送门:https://code.visualstudio.com/docs
1. 从官方下载地址下载VS Code并安装,安装过程应尽量避免中文路径。
2. 打开软件,在VSCode最左侧有五个选项,从上到下依次为资源管理器、搜索、源代码管理器、运行和extension。截图中含有task.json等文件,先不用管它们,刚开始配置是没有这些文件的。
图1
3. 安装extension
根据个人喜好可以安装不同的扩展(extension),点击最后一个选项搜索即可,上述是安装了中文插件后截图,直接键入Chinese,第一个即为中文扩展。同样地,键入C++,然后安装扩展。
4.下载C++编译器
这里下载mingW-W64,下载传送门:http://mingw-w64.org/doku.php/download。下载中间这个,并安装,安装过程中的setting一般保持默认设置,其他的根据需要修改。安装完成后,需要将安装路径添加到系统环境变量中,即“路径\mingw64\bin”,安装完成后需要重启。
5.配置环境
在配置环境过程中,会产生一个.vscode 文件夹,里面包含三个配置文件:
tasks.json:编译指令 (build instructions)
launch.json:调试设置 (debugger settings)
c_cpp_properties.json:编译器路径和IntelliSense设置 (compiler path and IntelliSense settings)
(1)配置task.json
首先,在目标目录下新建文件夹vscode(当然名称随你喜好),然后如图2,依次打开:文件-->打开文件夹-->选择vscode,结果如图3。点击图3方框中“新建文件”新建main.cpp,并粘贴以下代码,结果如图4.
#include <iostream>
#include <vector>
#include <string> using namespace std; int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"}; for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}
图2
图3
图4
然后依次点击最上方工具栏中 终端-->配置默认生成任务,然后选择C/C++:g++.exe build active file ,结果如图7,如果这里弹出的候选方式中没有“C/C++:g++.exe build active file”,可参考附录解决方法。
图5
图6
图7
为了更方便注释与说明,将tasks.json写在下面,需要注意的是在VS Code中路径中是”\\“而不是单个"\",与visual studio2015一致。
{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file", // label:左侧”运行“选项中编译器的名称,可以任意指定。
"command": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\g++.exe", // command:指定了本程序运行编译器的路径,这里是g++.exe。
"args": [ // args: args数组指定了传递给编译器的命令(commamd-line)参数,通过这个参数数组会告诉编译器
"-g", // 处理的是”${file}“文件,并且在${fileDirname}目录下生成${fileBasenameNoExtension}.exe
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "D:\\4.Software\\mingw-W64\\mingw64\\bin"
},
"problemMatcher": [ // problemMathcher: The problemMatcher value selects the output parser to use for finding errors and warnings in the compiler output.
"$gcc"
],
"group": {
"kind": "build", // group中的”isDefault“参数仅仅是为了方便,当其为True时,可通过快捷键ctrl+shift+B运行生成任务,如果为False,无法通过快捷键生成,但可以通过 终端-->运行生成任务。
"isDefault": true
}
}
]
}
回到main.cpp,点击 终端 -->运行生成任务,在底部终端会显示"终端被任务重用,按任意键继续" 。 同时也可以看到有两个参数,其对应于tasks.json中的args数组,-g参数表示当前编译的是main.cpp,-o参数表示当前生成的可执行exe文件的名称和路径。
图8
图9
(2) 配置调试器 debugger
依次点击 运行-->启动调试,出现图11所示,然后选择”C++(GDB/LLB)“,出现图12,选择第一个g++.exe,然后自动生成launch.json。
图10
图11
图12
launch.json如下:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //正调试的可执行文件路径
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
}
]
}
(3) 配置 c_cpp_properties.json
ctrl+shift+p然后键入C/C++,选择"C/C++编辑配置(UI)"然后自动生成c_cpp_properties.json。
图13
图14
c_cpp_properties.json:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\gcc.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version":
}
结语
本文主要记录初次使用VS Code配置过程,在这三个json文件中一些参数的具体含义现在还没弄懂,后续会继续更新VS Code使用相关文章,欢迎继续关注。(Date on 25, Mar, 2020)
其他博客配置方法:
[1] https://zhuanlan.zhihu.com/p/110027894?from_voters_page=true
附录
在配置默认生成任务时,可能会出现无“C/C++:g++.exe build active file”的情况,那么就需要手动改改。
ctrl+shift+p然后键入C/C++,选择"C/C++编辑配置(UI)"然后自动生成c_cpp_properties.json。就像上边的(3) 配置 c_cpp_properties.json一样,找到“编译器路径”,然后再下拉框中选择g++,值得注意的是,如果先前存在tasks.json,最好先删掉,然后选择g++,再手动生成默认配置任务。
【C++】VS Code配置的更多相关文章
- React-Native(二):React Native开发工具vs code配置
从网上翻阅了一些开发react-native的开发工具时,发现其实可选的工具还是比较多的Sublime Text,WebStrom,Atom+Nuclide,vs code 等.因为我用.net生态环 ...
- VS code 配置为 Python R LaTeX IDE
VS code配置为Python R LaTeX IDE VS code的中文断行.编辑功能强大,配置简单. VSC的扩展在应用商店搜索安装,快捷键ctrl+shift+x调出应用商店. 安装扩展后, ...
- VS code配置go语言开发环境之自定义快捷键及其对应操作
VS code 配置 自定义快捷键 及其对应操作 由于 vs code 的官方 go 插件不支持像 goland 一样运行当前 go 文件, 只能项目 或者 package 级别地运行, 因此有必 ...
- 利用 Settings Sync 同步vs code配置
vs code上有各种各样不同的插件,如果要在不同的电脑上使用 vs code 配置是件比较麻烦的事情,使用 Settings Sync 将 vs code 配置备份起来,当需要在其他电脑使用 vs ...
- VS Code配置初探
之前一直在用 Webstorm,看现在 VS Code 热度那么高,想着尝试一下. 熟悉编辑器的快捷键 VS Code 快捷键一览 安装使用到的插件 Chinese(修改你的编辑器语言,默认英文) E ...
- Windows 10 Mac 为Vs Code配置C/C++环境
2019-06-10 更新: 加上Mac版本的Vscode配置文件 0.前言 实现效果:右键一键编译运行C/C++文件 Vs code的代码效果很好看,也很轻量,所以想为Vs Code配置C/C++环 ...
- Visual Studio Code配置 HTML 开发环境
Visual Studio Code配置 HTML 开发环境 https://v.qq.com/x/page/l0532svf47c.html?spm=a2h0k.11417342.searchres ...
- Visual Studio Code配置GoLang开发环境
Visual Studio Code配置GoLang开发环境 在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页: ...
- Visual Studio Code配置
Visual Studio Code 从1.23.0开始VS Code就不再默认提供各语言版本, 而是改为使用插件的方式提供语言包. 在插件商店搜索Chinese (Simplified), 安装. ...
- VS Code配置Go语言开发环境
VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论 ...
随机推荐
- P2542 【[AHOI2005]航线规划】
P2542 [[AHOI2005]航线规划] 一个无向图,m个操作 删去一条边 给定两个点,求有多少边使得如果这条边不存在,给定的两个点不连通 一般这种删边的题目,考虑逆序加边处理 在删完的图中,任意 ...
- python(configparser 模块)
1.下载安装 configparser 第三方模块 pip install configparser 2.读取配置文件 #配置文件内容如下 """ "D:/co ...
- jmeter4.0,启动jmeter.bat闪退问题
问题描述: 电脑重装win10系统,配置好了java环境后,解压jmeter的zip包,然后按照网上的教程配置环境变量,然后兴冲冲启动jmeter.bat,结果,闪退,甚至连个报错信息都没有... 然 ...
- golang之method
method Go does not have classes. However, you can define methods on types. package main import ( &qu ...
- 树莓派4B踩坑指南 - (15)搭建在线python IDE
今天想在树莓派上自己搭一个在线的python IDE,于是找到了一篇教程--Fred913大神的从头开始制作OJ-在线IDE的搭建 自己尝试动手做了一下, 还是发现不少细节需要注意, 记录在此 如果不 ...
- Linova and Kingdom(树型-贪心)
题目大意:给定一棵树,1为首都(首都可以是工业城市也可以是旅游城市),一共有n个点. 其中要选出k个工业城市,每个工业城市出一个代表去首都,其快乐值是其途径旅游城市(非工业)的个数 求所有快乐值相加的 ...
- C - 小明系列故事――捉迷藏 HDU - 4528 bfs +状压 旅游-- 最短路+状压
C - 小明系列故事――捉迷藏 HDU - 4528 这个题目看了一下题解,感觉没有很难,应该是可以自己敲出来的,感觉自己好蠢... 这个是一个bfs 用bfs就很好写了,首先可以预处理出大明和二明能 ...
- H - Fire CodeForces - 864E 01背包
https://codeforces.com/problemset/problem/864/E 这个题目要把这个按照物品毁灭时间进行排序,如果时间短就要排在前面,这个是因为要保证之后的物品的拯救不会影 ...
- rsync 服务及部署
1 rsync简介 1.1 什么是rsync rsync: - a fast, versatile, remote (and local) file-copying toolrsync:是一种快速,多 ...
- STM32 使用st-link调试遇到写保护 Flash Timeout 问题的解决思路
本文介绍了如何解决STM32芯片Flash写保护导致无法下载程序,无法在线调试的问题:如果您遇到相同的问题,希望本文可以带来一些帮助: 如果本文帮到了您,请帮忙点个赞