失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > VSCode 使用教程--编写调试C/C++程序

VSCode 使用教程--编写调试C/C++程序

时间:2019-07-24 20:32:02

相关推荐

VSCode 使用教程--编写调试C/C++程序

一、前言

Visual Studio Code是一个轻量且强大的代码编辑器,支持Windows,OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过安装插件来支持C++、C#、Python、PHP等其他语言。

说了这么多其实我也不懂,对于我来说这个编辑器特殊之处在于:它可以通过安装各种软件的插件从而使他编程这个语言的编译器,并且它的风格很好

作为一款优秀的编辑器我们就来了解一下他吧。

二、安装C/C++插件

要安装Microsoft C / C ++扩展,请执行以下操作:

打开VS代码。单击补充工具栏上的“扩展视图”图标。搜索c++。单击“ 安装”,然后单击“ 重新加载”。

注意:C / C ++扩展不包括C ++编译器或调试器。您需要安装这些工具或使用计算机上已安装的工具。流行的C ++编译器是用于Windows的mingw-w64,用于macOS的XCode的 Clang 和用于Linux的GCC。确保您的编译器可执行文件位于您的平台路径中,以便扩展程序可以找到它。该扩展还支持Windows的Windows子系统。

三、安装C / C ++编译器

安装完扩展仍然不能编译代码,还需要编译器,这里我们使用Windows下流行的mingw-w64。

因为这个编译器的服务器在国外很难下载下来,这里如果你电脑上有DEV C++或者其他编译器就好说了,这些编译器都会包含这个编译器,只要在他们的安装目录里找下一定会有一个叫mingw-w64的文件夹?,这个就是我们需要的。(如果你不想找,我已经上传到了百度云:链接:/s/1r7T_7bD8lAdH3QGfbzj-iw

提取码:luq2 复制这段内容后打开百度网盘手机App,操作更方便哦)。

虽说是安装,但是他下载下来就可以了,是不需要安装的哦。把文件解压到一个好找的位置,比如D盘根目录。

四、编写、修改配置文件

这部分网上确实有很多文章,但是他们的配置文件有些复杂。

这里参考官网教程进行配置 /docs/cpp/config-mingw

有三个文件需要我们修改:

c_cpp_properties.json  指定编译器路径tasks.json 指定如何构建可执行文件launch.json 指定调试器设置

1.配置编译器路径

①.按Ctrl + Shift + P打开命令面板,它看起来像这样:

②.开始键入“C / C ++”,然后从建议列表中选择“ 编辑配置 ”。VS Code创建一个名为的文件c_cpp_properties.json,并使用一些默认设置填充它。

③.找到该compilerPath设置并粘贴到该bin文件夹的路径中。如果您在C:\ mingw-w64下安装了Mingw-w64版本8.1.0,则路径如下所示:C:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin\g++.exe。

④.设置intelliSenseMode为gcc-x64。此设置有助于IntelliSense功能为GCC提供正确的信息。

您可能会注意到includePath默认文件中还有一个设置。如果程序包含不在工作区或标准库路径中的头文件,则只需设置此项。实际上,如果您不需要,我们建议您完全删除该设置。在本教程中不需要它,因此它从下面的代码中删除。您的完整c_cpp_properties.json文件应如下所示(但请务必使用您特定的Mingw-w64路径):

{"configurations": [{"name": "Win32","defines": ["_DEBUG","UNICODE"],"compilerPath": "D:/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/bin/g++.exe","intelliSenseMode": "gcc-x64","browse": {"path": ["${workspaceFolder}"],"limitSymbolsToIncludedHeaders": true,"databaseFilename": ""}}],"version": 4}

2.创建构建任务

接下来,创建一个tasks.json文件来告诉VS Code如何构建(编译)程序。此任务将调用WSL上的g ++编译器以基于源代码创建可执行文件。

①.从主菜单中,选择“ 视图”>“命令选项板”,然后键入“任务”并选择“任务” :添加默认构建任务,然后选择“ 其他”。VS Code创建一个最小tasks.json文件并在编辑器中打开它。

②.继续使用以下代码段替换整个文件内容:

{"version": "2.0.0","tasks": [{"label": "gcc","type": "shell","command": "gcc","args": ["-g","-o","${fileBasenameNoExtension}","${fileBasenameNoExtension}.c"],"group": {"kind": "build","isDefault": true}}]}

该command设置指定要运行的程序; 在C语言情况下是gcc.exe,在C++语言情况下是g++。该args数组指定将传递给gcc/g++的命令行参数。必须按编译器预期的顺序指定这些参数。

label您将在VS Code Command Palette中看到该值; 你可以随意命名。

对象中的"isDefault": true值group指定在按Ctrl + Shift + B时将运行此任务。如果将其设置为false,则必须从“运行构建任务”下的“命令调色板”菜单中运行它

3.配置调试设置

接下来,我们将配置VS Code以在按F5时启动GCC调试器(gdb.exe)。您需要调整您的miDebuggerPath值以与Mingw-w64安装的路径完全匹配。

默认情况下,C ++扩展将断点添加到第一行main。该stopAtEntry值设置为true使调试器在该断点上停止。false如果您想忽略它,可以将其设置为。

externalConsole设置为true使得调用外部终端。

您的完整launch.json文件应如下所示:

{"version": "0.2.0","configurations": [{"name": "(gdb) Launch","type": "cppdbg","request": "launch","program": "${workspaceFolder}/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "D:/MinGW64/bin/gdb.exe","preLaunchTask": "gcc","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]}

五、大功告成

现在你就可以开始写程序啦!

编写完成之后按Ctrl + Shift + B尽心编译,他会生成一个.exe可执行文件,之后按F5就可以调试了~

如果觉得《VSCode 使用教程--编写调试C/C++程序》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。