转自: https://blog.csdn.net/lidong_12664196/article/details/68928136#visual-sutdio-code%E4%BB%A5%E5%8F%8Acc%E6%8F%92%E4%BB%B6%E5%AE%89%E8%A3%85

转自: https://blog.csdn.net/sqlaowen/article/details/54645241

最近有消息说,编程将是有史以来最好的工作,可是辗转于于各大主流操作系统的码农们都知道,作为一个程序员尤其是多种语言程序员,会因为开发环境而感到苦恼,传统的SourceInsight又贵又老还不跨平台,Eclispe在性能方面不尽人意,Visual Studio 又大又不跨平台,Vim, Emacs由于门槛和视觉原因又不是所有人都用得习惯,还有一些类似SublimeText, Atom, SciTe, Notepad++等等,由于各种性能是否开源是否可扩展都让程序员各种犹豫,直到VS code从天而降,带着微软Visual Studio强大的智能却又极小的体积,开源跨平台可扩展的流行,踏入编辑器的战场,感觉,要变天了。所以容小农来介绍下Visual Studio Code的初步使用方法:


Visual Sutdio Code以及C/C++插件安装

  1. 安装VS Code:请打开官网 https://code.visualstudio.com/ 下载编辑器,并一路默认安装。
  2. 安装cpptools插件(安装方式有两种,任选一种,一种是点击VS code的插件图标调出查找插件窗口然后搜索cpptools,另一种是Ctrl+p 调出VS code的shell,输入ext install cpptools),用于代码分析,编辑提示等等,具体可以参考介绍:https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools 
  3. 安装 code runner插件,可以动态运行选中的代码区块,详细介绍: 
    https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner 
  4. 安装 native debug 插件,用于gdb图形化调试你的C/C++程序,详细参考: 
    https://marketplace.visualstudio.com/items?itemName=webfreak.debug 
  5. 重启VS code, 
    安装完以上插件后,重启VS code,让安装的插件生效。

Visual Studio Code 和GCC共同调试C/C++程序

安装GCC工具链

  1. 安装C/C++ 的 GCC 工具链,windows上可以安装cygwin或者MinGW, linux/os x如果默认未安装,那安装也非常简单,根据使用的版本网上搜索相应的命令行即可。 
    Cygwin 下载安装网址: https://cygwin.com/install.html 
    MinGW 下载安装网址:http://mingw.org/ 
    这里以cygwin为例,注意选择适合你电脑系统的安装文件,64位系统请选择x86_64对应的安装文件。具体安装过程可以自己百度,注意点是,安装时,一定要选中 gcc, g++, gdb, make 等开发工具包。

    1):首先去网站 www.cygwin.com 下载 Cygwin 的 Windows系统的安装包,32位系统下载steup-x86.exe,64位系统则下载steup-x86_64.exe,界面如下。

    ​2):双击下载好的Cygwin安装包,出现下面界面,点击下一步。

    ​3):之后出现如下界面,默认为第一个选项,意思是从网络下载并安装(从官网下载的不是完整安装包,只是安装引导程序),第二个选项是仅仅下载不安装,第三个则是从本地安装(意思是已经下载好了需要的安装文件)。我还没有下载好文件,并且要安装,所以选择默认第一项,之后点击下一步。

    ​4):在这里选择安装目录,一般要有一个专门用来作开发工具的安装目录,我这里在为C:\Develop,并在此文件下新建用来安装Cygwin的目录,所以总的目录为C:\Develop\MinGW。选择所有用户,之后点击下一步。

    ​5):这里要为将要下载的安装包选择存放位置,我选择在C盘的下载目录。选择好后点击下一步。

    ​6):选择默认,点击下一步。

    ​7):闪过一个页面之后出现如下界面,选择蓝色的网址,这是国内中科大的镜像站,所以网速较快,东北地区的也可以选择上面那一个,是大连东软学院的镜像站,隔得较近,应该比中科大的快。

    8):在这个页面之后,就是最重要的一个地方了,会自动进入下一步。

    ​9):在画红线处分别搜索 gcc-core、gcc-g++、make、gdb、binutils,以上所有项目都在 devel 文件夹下。

    ​原本的 5.3.0-5 位置也是 Skip,在点击一次之后,出现如下界面即可,其他的也一样。

    gcc-core
    gcc-g++
    make
    gdb
    binutils

    10):之后点击左下角的下一步。

    ​11):这里检查要安装的项目,和上面选择的是不一样的,增加了许多相关的文件,不好检查,不过一般没问题,所以直接点击下一步。

    ​12):此时开始下载并安装Cygwin,时间稍微久一点。

    ​13):根据需要是否在桌面(第一项)和开始菜单(第二项)创建快捷方式,因为我不常用终端模式,但有时候可能需要,所以只选择第二项,点击完成。

调试C/C++程序

  1. 在操作系统中新建一个工程目录,如 “hello”,然后启动vs code,打开这个空目录: 
  2. 用vs code 在hello目录新建一个源文件 hello.c: 

    文件内容如下:

    #include <stdio.h>
int g_var = 0;
void print_line(char *str)
{
if (str != NULL)
printf("%s\r\n", str);
else
printf("null string\r\n");
}
int main (int argc, char **argv)
{
int l_var = 1;
print_line("hello world!");
printf("g_var = %d, l_var = %d.\r\n", g_var, l_var);
return 0;
}

*3. 添加头文件索引路径。在hello.c中,你会发现include头文件那一行下面有绿色的波浪线,代表vs code的cpptools插件找不到相应路径,将鼠标移到这一行点击。 

左边会出现一个提示的黄色小灯泡符号,点击它,然后点击“Add include path to settings”按钮, 将生成并打开一c_cpp_properties.json 文件,编辑这个json文件,添加c/c++头文件的路径进去: 

这里cygwin的头文件路径为: “C:/cygwin/usr/include/*”,将它添加到”includePath”这个变量中。 
4. 设置编译构建环境。 
在vs code中点击hello.c回到hello.c文件,调用快捷键 Ctrl+Shift+B 构建可执行文件。 
此时vs code会报错,在vs code的顶栏显示“No task runner configured”,你只需要点击右边的蓝色按钮“Configure task runner”来生成编辑task.jason即可: 

点击后,在弹出的选择栏中选择”Others“: 

选择后会创建并打开一个task.jason的配置文件, 修改其中的command 和 args变量并保存:

"command": "gcc ",
"args": ["-g", "${file}", "-o", "${workspaceRoot}/hello.exe"],
  • 1
  • 2

*5. 构建hello.exe。 
直接快捷键 Ctrl+Shift+B将hello.c编译构建为hello.exe, 
这时你会发现vs code的左边栏中多了一个hello.exe文件。 

6. 运行和调试hello.exe。 
快捷键 Ctrl+Shift+D 或者点击左边Debug按钮调出debug窗口。 

按快捷键F5准备调试这个程序,此时会弹出选择debug的环境,选择 “GDB”即可。 

之后会创建并打开launch.jason配置文件,修改一下“target”这个变量内容为”./hello.exe”: 

使用gdb调试,添加监控变量(在WATCH栏中添加变量名)和断点(鼠标在hello.c的左边栏点击显示红色即可添加断点),如: 

快捷键F5运行调试,运行到断点后观察左边DEBUG栏目中显示的各种信息,然后 
继续按绿色按钮(或快捷键F5)继续运行,如: 

点击右下方DEBUG输出栏中的 ”DEBUG CONSOLE” 将看到程序运行时打印的信息: 

7. 至此,一个简单的在WINDOWS上用VS Code编辑和调试C程序的例子完毕。


Visual Studio Code编辑时的常用快捷键

快捷键 作用
F1或Ctrl+Shift+P 打开VS Code的命令Shell
Ctrl+P 打开VS code文件/符号查询窗口,输入”>”可以进入F1同样的Shell
Ctrl+Shift+O 查找符号,函数,属性
Ctrl+G 跳转到某行
Ctrl+[ 代码缩进
Ctrl+] 代码往前移进
Ctrl+F 查找文本
Ctrl+H 查找替换
Ctrl+Shift+F 整文件夹中查找
Ctrl+ + 放大文本
Ctrl+ - 缩小文本
Ctrl+ Home 移动到文件头
Ctrl+ End 移动到文件尾
Ctrl+ Tab 在多个文件之间切换
Ctrl+ / 注释/解注释鼠标选中的代码块
Ctrl+ \ 切分当前窗口
Ctrl+ N 新建文件
F12 跳转到变量,函数,类型定义
Alt+鼠标点击 连续选中多个文本,同时编辑
Alt+F12 查找所有对当前变量,函数,类型的引用
Alt+<-方向键 跳回到上一视图
Alt+上下方向键 上下移动当前光标所在行
Shift+Alt+上下方向键 向上/向下复制一行
Ctrl+Enter 在当前行下边插入一行
Ctrl+Shift+Enter 在当前行上方插入一行
Alt+Shift+鼠标左键 列编辑
Shift+Alt+F 代码格式化

Visual Studio Code官方资源

编辑C++文件: http://code.visualstudio.com/docs/languages/cpp 
写VS Code扩展插件:https://code.visualstudio.com/docs/extensions/example-hello-world

Visual Studio Code 构建C/C++开发环境的更多相关文章

  1. 【转载】Visual Studio Code 构建 C/C++ 开发环境

    https://www.cnblogs.com/XieSir/articles/8288051.html 1. 安装 MinGW Distro / MinGW / GNU GCC 中的任何一款,( W ...

  2. Visual Studio Code中配置GO开发环境

    在Visual Studio Code中配置GO开发环境 一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的 ...

  3. Visual Studio Code搭建NodeJs的开发环境

    一.Visual Studio Code搭建NodeJs的开发环境 1.下载安装NodeJs并配置环境变量 可以参考:NodeJs的安装和环境变量配置 2.下载安装 VS Code编辑器 可以参考:V ...

  4. 在Visual Studio Code中配置GO开发环境

    一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...

  5. windows通过Visual Studio Code中配置GO开发环境(转)

    一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...

  6. Visual Studio Code 搭建 C/C++开发环境方法总结

    之前看错资料踩了不少坑,先将可行经验总结如下: 1. 下载 Visual Studio Code 并安装.地址:https://code.visualstudio.com 2. 安装 C/C++插件与 ...

  7. Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建

    我们解释win32在Visual Studio下一个libcurl图书馆开发环境的搭建.Cocos2d-x发动机实际上与Win32在访问libcurl库.Cocos2d-x 3.x在libcurl库文 ...

  8. Visual Studio Code (vscode) 配置 C / C++ 环境

    Visual Studio Code (vscode) 配置 C / C++ 环境 昨天突发奇想,想使用vscode配置C++环境,因为不想下载 Dev OR codeblock,然后借助了很多网上教 ...

  9. Visual Studio Code中C/C++的环境配置

    Visual Studio Code 的功能十分强大,但是对我这种小白不是很友好,它和其它的集成开发工具不同,Visual Studio Code (以下简称VS)自身其实仅仅是一个编辑器, 是不具备 ...

随机推荐

  1. poj1258 Agri-Net(Prime || Kruskal)

    题目链接 http://poj.org/problem?id=1258 题意 有n个农场,现在要在n个农场之间铺设光纤使得n个农场连接起来,求铺设光纤的最短距离. 思路 最小生成树问题,使用Prime ...

  2. caffe 如何训练自己的数据图片

    申明:此教程加工于caffe 如何训练自己的数据图片 一.准备数据 有条件的同学,可以去imagenet的官网http://www.image-net.org/download-images,下载im ...

  3. 【GO基础】神奇的iota特殊常量

    最近在学习GO语言,然后发现有一个特殊常量是以前没有接触过的,比较感兴趣,这里给大家介绍一下. iota,特殊常量,可以被认为是一个可以被编译器修改的常量. 核心概念:iota在const关键字出现时 ...

  4. Java 内存模型基础

    一.并发编程模型的两个关键问题 1. 线程之间如何通信 通信是指线程之间以何种机制来交换信息. 在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递. 在共享内存的并发模型里,线程之间共享程序 ...

  5. gp数据库运维

    最近需要将一份db2导出的历史数据入库gp集群,然后把每天的增量数据导出成txt文件和对应的log日志,再ftp传输给另外一台机器.其中陆续碰到一些坑,在此记录 历史文件数据清洗 列分隔符的选择 碰到 ...

  6. NetCore+Dapper WebApi架构搭建(六):添加JWT认证

    WebApi必须保证安全,现在来添加JWT认证 1.打开appsettings.json添加JWT认证的配置信息 2.在项目根目录下新建一个Models文件夹,添加一个JwtSettings.cs的实 ...

  7. Power OJ 2605 SPFA+dp思想

    题目链接[https://www.oj.swust.edu.cn/problem/show/2605] 题意:给出包含N(N <= 5000)个点M条边的有向图,然后求1 - N在满足距离小于T ...

  8. [BZOJ5287][HNOI2018]毒瘤(虚树DP)

    暴力枚举非树边取值做DP可得75. 注意到每次枚举出一个容斥状态的时候,都要做大量重复操作. 建立虚树,预处理出虚树上两点间的转移系数.也可动态DP解决. 树上倍增.动态DP.虚树DP似乎是这种问题的 ...

  9. PHP 大神的十大优良习惯

    1.多阅读手册和源代码 没什么比阅读手册更值得强调的事了–仅仅通过阅读手册你就可以学习到很多东西,特别是很多有关于字符串和数组的函数.就在这些函数里面包括许多有用 的功能,如果你仔细阅读手册,你会经常 ...

  10. Codeforces Round #359 (Div. 2) A. Free Ice Cream 水题

    A. Free Ice Cream 题目连接: http://www.codeforces.com/contest/686/problem/A Description After their adve ...