使用Visual Studio Code开发(编译、调试)C++程序

先放结论

经过以下折腾,可以使用VSC编写C++程序了。

但如果只是为了学习C、C++、数据结构,还是建议直接使用Visual Studio Community。不用折腾配置,功能更强大,易用性更好。

如果只是编写一些小程序,用CodeBlock也很香。

安装步骤

  1. 安装VSC(Visual Studio Code)
  2. 安装C/C++编译器(如MinGW-w64),然后配置好环境变量。
    • 下载:打开MinGW-w64,选择合适版本,如x86_64-posix-seh进行下载。
    • 配置操作系统的Path变量:在Path变量中加入mingw的安装路径,如d:\mingw64\bin\
    • 配置完即可在VSC的终端或系统命令行下编译、运行.cpp程序了。参考命令:g++ HelloWorld.cpp -o HelloWorld
  3. 安装并配置C++ Intellisense
  4. 安装并配置Code Runner插件,可在VSC内一键编译运行
    • 打开VSC中的扩展管理界面(文件-首选项-扩展,或者Ctrl + Shift + x),搜索Code Runner

      • 快速编译并运行当前文件:Ctrl + Alt + N或右键点击当前编辑框、选择Run Code
    • 配置控制台允许输入:在"文件-首选项-设置-用户-扩展-Run Code Configuration",勾选Run In Terminal
  5. 解决中文乱码问题
    • 配置:"文件-首选项-设置",搜索encoding,勾选"Auto Guess Encoding"。
  6. 配置调试环境(可选)
    • 需配置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++程序的更多相关文章

  1. 【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    .NET Core with Visual Studio Code 目录 概述... 2 先决条件... 2 练习1: 安装和配置.NET Core以及Visual Studio Code 扩展... ...

  2. ubuntu下使用visual studio code来编译和调试C++

    最近想在linux上编译c++代码,自己却一直习惯window上的IDE.以前公司要我写Linux代码的时候,我一般都是用eclipse + CDT,而eclipse这东西吧,我个人感觉因为加载组件太 ...

  3. Mac上使用Visual Studio Code开发/调试.NET Core代码

    Mac上使用Visual Studio Code开发/调试.NET Core代码 .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今 ...

  4. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  5. [Tool] 使用Visual Studio Code开发TypeScript

    [Tool] 使用Visual Studio Code开发TypeScript 注意 依照本篇操作步骤实作,就可以在「Windows」.「OS X」操作系统上,使用Visual Studio Code ...

  6. Visual Studio Code开发TypeScript

    [Tool] 使用Visual Studio Code开发TypeScript   [Tool] 使用Visual Studio Code开发TypeScript 注意 依照本篇操作步骤实作,就可以在 ...

  7. 使用Visual Studio Code开发.NET Core看这篇就够了

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html 在本文中,我将带着大家一步一步的通过图文的形式来演示如何在Visual Studi ...

  8. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步

    本文记录了在Windows环境下安装Visual Studio Code开发工具..Net Core 1.0 SDK和开发一个简单的Web-Demo网站的全过程. 一.安装Visual Studio ...

  9. 使用Visual Studio Code 开发 ESP8266

    使用Visual Studio Code 开发 ESP8266 ESP8266+ArduinoIDE+VSCode开发ESP8266. 首先说明一下ESP8266并不是某一WiFi模块的名字(我以前是 ...

随机推荐

  1. spring cloud 的自我保护机制

    spring cloud 的自我保护机制定义: 自我保护模式是:在出现网络异常波动的情况下,使用自我保护模式使eureka 集群更加健壮,稳定. 自我保护机制是:在15分钟内客户端没有雨注册中心发生心 ...

  2. java中List按指定大小分割

    之前写过的代码,几个月后遇到类似的功能,感觉很熟悉,稍微费些劲也能做到,但是觉得有些不甘.明明之前整理好的为什么要重新做?百度参考其他人的思路感觉不是很顺心,个人原因吧.于是翻箱倒柜找出以前的代码,贴 ...

  3. 蓝牙协议分析(12)_LQ和RSSI的原理及应用场景

    在蓝牙协议栈的物理层,有这样两个比较有用的参数:LQI和RSSI.它们都是通过接收端,判断当前无线环境的质量(链路质量),以指导后续的动作.但这两个数值的计算原理和使用场景又有很大的差别. LQI ( ...

  4. Delphi编程之爬取贴吧图片最终版

    接着前面两篇文章的内容,我们今天把这个贴吧爬取图片的程序完善,让它具有可以下载贴吧多页和帖子多页图片的能力. 主界面设计如下,包含3个labelededit,3个button,1个memo,1个str ...

  5. win11.2.0.4lsnrctl status hang

    以前听客户说监听日志大于4G,监听出现问题.本次另一个客户也出现这个问题,表现为监听lsnrctl start,status长久hang住 匹配mos WINDOWS: Listener Hangs ...

  6. 【leetcode】485. Max Consecutive Ones

    problem 485. Max Consecutive Ones solution1: class Solution { public: int findMaxConsecutiveOnes(vec ...

  7. Feign源码解析系列-注册套路

    感谢不知名朋友的打赏,感谢你的支持! 开始 在追寻Feign源码的过程中发现了一些套路,既然是套路,就可以举一反三,所以值得关注. 这篇会详细解析Feign Client配置和初始化的方式,这些方式大 ...

  8. java开发150个建议

    阅读目录 建议1:不要在常量和变量中出现易混淆的字母 建议2:莫让常量蜕变成变量 建议3:三元操作符的类型务必一致 建议4:避免带有变长参数的方法重载 建议5:别让null值和空值威胁到变长方法 建议 ...

  9. python利用requests和threading模块,实现多线程爬取电影天堂最新电影信息。

    利用爬到的数据,基于Django搭建的一个最新电影信息网站: n1celll.xyz  (用的花生壳动态域名解析,服务器在自己的电脑上,纯属自娱自乐哈.) 今天想利用所学知识来爬取电影天堂所有最新电影 ...

  10. Dart 的function

    方法的定义 返回类型 方法名 (参数1 ,参数2 ,...){ 方法体 返回值 } => 的使用