使用Visual Studio Code开发(编译、调试)C++程序
使用Visual Studio Code开发(编译、调试)C++程序
先放结论
经过以下折腾,可以使用VSC编写C++程序了。
但如果只是为了学习C、C++、数据结构,还是建议直接使用Visual Studio Community。不用折腾配置,功能更强大,易用性更好。
如果只是编写一些小程序,用CodeBlock也很香。
安装步骤
- 安装VSC(Visual Studio Code)。
- 安装C/C++编译器(如MinGW-w64),然后配置好环境变量。
- 下载:打开MinGW-w64,选择合适版本,如x86_64-posix-seh进行下载。
- 配置操作系统的
Path
变量:在Path
变量中加入mingw的安装路径,如d:\mingw64\bin\
- 配置完即可在VSC的终端或系统命令行下编译、运行.cpp程序了。参考命令:
g++ HelloWorld.cpp -o HelloWorld
。
- 安装并配置C++ Intellisense。
- 一般新建
.cpp
文件,VSC会自动提示你安装该插件。 - 参考资料:Visual Studio Code include file not found in include directory
- 一般新建
- 安装并配置Code Runner插件,可在VSC内一键编译运行
- 打开VSC中的扩展管理界面(文件-首选项-扩展,或者
Ctrl + Shift + x
),搜索Code Runner。- 快速编译并运行当前文件:
Ctrl + Alt + N
或右键点击当前编辑框、选择Run Code。
- 快速编译并运行当前文件:
- 配置控制台允许输入:在"文件-首选项-设置-用户-扩展-Run Code Configuration",勾选Run In Terminal。
- 打开VSC中的扩展管理界面(文件-首选项-扩展,或者
- 解决中文乱码问题
- 配置:"文件-首选项-设置",搜索encoding,勾选"Auto Guess Encoding"。
- 配置调试环境(可选)
- 需配置launch.json与task.json
- 创建launch.json:按
Ctrl+Shift+P
,输入Tasks: Configure Task
,选择Create tasks.json file from templates
,选择Others
。 - 创建task.json:好像按
F5
就会提示创建。
task.json(用于Build)
{
"version": "2.0.0",
"tasks": [
{
"label": "build hello",
"type": "shell",
"command": "g++",
"args": [
"-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}.exe" //代表build的是当前文件
],
"group": { //该配置:按ctrl+shift+b就可以直接build当前文件
"kind": "build",
"isDefault": true
}
}
]
}
launch.json(用于调试)
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "d:/mingw64/bin/gdb.exe", //mingw的调试程序所在路径
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "build hello" //要与tasks.json中的label属性值一样
}
]
}
常用快捷键与其他设置
快捷键
命令面板(重要):Ctrl+Shift+P
自动生成小代码块:Tab
对同一个文件并排打开多个:Ctrl+\
注释行:Ctrl+/
删除行:Ctrl+Shift+K
格式化文本:Shift+Alt+F
或右键点击编辑区。
列选择:Shift+Alt+鼠标拖拽
注意:如果想使用其他编辑上的惯用快捷键,请选择文件-首选项-按键映射选择相应的方案。
其他设置
使用鼠标滚轮改变字体大小:打开文件-首选项-设置在搜索设置中输入mousewheelzoom
,勾选Editor: Mouse Wheel Zoom。
参考资料
windows下使用vscode编写运行以及调试C/C++
C/C++ for Visual Studio Code (Preview)
使用Visual Studio Code开发(编译、调试)Java程序
轻量级的开发平台Visual Studio Code,其可以方便的与git相结合。并且最近推出了Visual Studio Code Installer for Java。大家也可尝试使用。具体中文说明可以参考这篇文章微软为 Java 开发者推出 VSCode 安装程序。
总的来说比写C++程序容易很多。大家可以尝试一下。
使用Visual Studio Code开发(编译、调试)C++程序的更多相关文章
- 【实验手册】使用Visual Studio Code 开发.NET Core应用程序
.NET Core with Visual Studio Code 目录 概述... 2 先决条件... 2 练习1: 安装和配置.NET Core以及Visual Studio Code 扩展... ...
- ubuntu下使用visual studio code来编译和调试C++
最近想在linux上编译c++代码,自己却一直习惯window上的IDE.以前公司要我写Linux代码的时候,我一般都是用eclipse + CDT,而eclipse这东西吧,我个人感觉因为加载组件太 ...
- Mac上使用Visual Studio Code开发/调试.NET Core代码
Mac上使用Visual Studio Code开发/调试.NET Core代码 .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今 ...
- 打造TypeScript的Visual Studio Code开发环境
打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...
- [Tool] 使用Visual Studio Code开发TypeScript
[Tool] 使用Visual Studio Code开发TypeScript 注意 依照本篇操作步骤实作,就可以在「Windows」.「OS X」操作系统上,使用Visual Studio Code ...
- Visual Studio Code开发TypeScript
[Tool] 使用Visual Studio Code开发TypeScript [Tool] 使用Visual Studio Code开发TypeScript 注意 依照本篇操作步骤实作,就可以在 ...
- 使用Visual Studio Code开发.NET Core看这篇就够了
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html 在本文中,我将带着大家一步一步的通过图文的形式来演示如何在Visual Studi ...
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步
本文记录了在Windows环境下安装Visual Studio Code开发工具..Net Core 1.0 SDK和开发一个简单的Web-Demo网站的全过程. 一.安装Visual Studio ...
- 使用Visual Studio Code 开发 ESP8266
使用Visual Studio Code 开发 ESP8266 ESP8266+ArduinoIDE+VSCode开发ESP8266. 首先说明一下ESP8266并不是某一WiFi模块的名字(我以前是 ...
随机推荐
- spring cloud 的自我保护机制
spring cloud 的自我保护机制定义: 自我保护模式是:在出现网络异常波动的情况下,使用自我保护模式使eureka 集群更加健壮,稳定. 自我保护机制是:在15分钟内客户端没有雨注册中心发生心 ...
- java中List按指定大小分割
之前写过的代码,几个月后遇到类似的功能,感觉很熟悉,稍微费些劲也能做到,但是觉得有些不甘.明明之前整理好的为什么要重新做?百度参考其他人的思路感觉不是很顺心,个人原因吧.于是翻箱倒柜找出以前的代码,贴 ...
- 蓝牙协议分析(12)_LQ和RSSI的原理及应用场景
在蓝牙协议栈的物理层,有这样两个比较有用的参数:LQI和RSSI.它们都是通过接收端,判断当前无线环境的质量(链路质量),以指导后续的动作.但这两个数值的计算原理和使用场景又有很大的差别. LQI ( ...
- Delphi编程之爬取贴吧图片最终版
接着前面两篇文章的内容,我们今天把这个贴吧爬取图片的程序完善,让它具有可以下载贴吧多页和帖子多页图片的能力. 主界面设计如下,包含3个labelededit,3个button,1个memo,1个str ...
- win11.2.0.4lsnrctl status hang
以前听客户说监听日志大于4G,监听出现问题.本次另一个客户也出现这个问题,表现为监听lsnrctl start,status长久hang住 匹配mos WINDOWS: Listener Hangs ...
- 【leetcode】485. Max Consecutive Ones
problem 485. Max Consecutive Ones solution1: class Solution { public: int findMaxConsecutiveOnes(vec ...
- Feign源码解析系列-注册套路
感谢不知名朋友的打赏,感谢你的支持! 开始 在追寻Feign源码的过程中发现了一些套路,既然是套路,就可以举一反三,所以值得关注. 这篇会详细解析Feign Client配置和初始化的方式,这些方式大 ...
- java开发150个建议
阅读目录 建议1:不要在常量和变量中出现易混淆的字母 建议2:莫让常量蜕变成变量 建议3:三元操作符的类型务必一致 建议4:避免带有变长参数的方法重载 建议5:别让null值和空值威胁到变长方法 建议 ...
- python利用requests和threading模块,实现多线程爬取电影天堂最新电影信息。
利用爬到的数据,基于Django搭建的一个最新电影信息网站: n1celll.xyz (用的花生壳动态域名解析,服务器在自己的电脑上,纯属自娱自乐哈.) 今天想利用所学知识来爬取电影天堂所有最新电影 ...
- Dart 的function
方法的定义 返回类型 方法名 (参数1 ,参数2 ,...){ 方法体 返回值 } => 的使用