VS Code配置C++语言开发与调试环境(超详细)

您所在的位置:网站首页 windows开发和linux开发哪个难 VS Code配置C++语言开发与调试环境(超详细)

VS Code配置C++语言开发与调试环境(超详细)

2023-05-28 15:48| 来源: 网络整理| 查看: 265

本地环境设置

如果您想要设置 C++ 语言环境,您需要确保电脑上有以下两款可用的软件:

文本编辑器 C++ 编译器

部分集成开发环境(IDE)同时拥有代码编辑器(文本编辑器)和编译环境,还拥有一整套的开发调试工具包和分析工具,也可以使用这些集成开发环境来减少配置的烦恼,比较典型的集成开发环境有:visual C++6.0(不推荐),dev-C++(不推荐),visual studio(推荐,但是只适用于Windows),codeblock等

关于文本编辑器

它用于编写源代码(C++源代码本质上就是一个后缀名为.cpp的文本文件)。

文本编辑器包括 Windows Notepad、vscode/vscodium 、sublime和 vim/vi等。

文本编辑器的名称和版本在不同的操作系统上可能会有所不同。例如,Notepad 通常用于 Windows 操作系统上,vim/vi 可用于 Windows 和 Linux/UNIX 操作系统上。

通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。C++ 程序的源文件通常使用扩展名 .cpp、.cp 或 .c。

在开始编程之前,请确保您有一个文本编辑器,且有足够的经验来编写一个计算机程序,然后把它保存在一个文件中,编译并执行它。

备注:

vscode和vscodium是同一软件在不同许可证情况下的不同结果,vscode不开源二进制文件,而vscodium完全开源,这对Linux用户可能有所影响(部分linux用户不喜欢不开源的东西,不希望微软对自己做任何监控,vscode会在一定程度上收集用户报告)

.c为C语言的源代码文件,在C++中不建议使用!!!

C++ 编译器

写在源文件中的源代码是人类可读的源。它需要"编译",转为机器语言,这样 CPU 可以按给定指令执行程序。

C++ 编译器用于把源代码编译成最终的可执行程序。

大多数的 C++ 编译器并不在乎源文件的扩展名,但是如果您未指定扩展名,则默认使用 .cpp。

最常用的免费可用的编译器是 GNU 的 C/C++ 编译器,如果您使用的是 HP 或 Solaris,则可以使用各自操作系统上的编译器。

以下部分将指导您如何在不同的操作系统上安装 GNU 的 C/C++ 编译器。这里同时提到 C/C++,主要是因为 GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。

安装 GNU 的 C/C++ 编译器 UNIX/Linux 上的安装

如果您使用的是 Linux 或 UNIX,请在命令行使用下面的命令来检查您的系统上是否安装了 GCC:

$ g++ -v

如果您的计算机上已经安装了 GNU 编译器,则会显示如下消息:

Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr ....... Thread model: posix gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)

如果未安装 GCC,那么请按照 http://gcc.gnu.org/install/ 上的详细说明安装 GCC。

Mac OS X 上的安装

如果您使用的是 Mac OS X,最快捷的获取 GCC 的方法是从苹果的网站上下载 Xcode 开发环境,并按照安装说明进行安装。一旦安装上 Xcode,您就能使用 GNU 编译器。

Xcode 目前可从 developer.apple.com/technologies/tools/ 上下载。

Windows 上的安装(与C语言编译环境相同)

C++与C适用相同的编译工具MinGW

为了在 Windows 上安装 GCC,您需要安装 MinGW。为了安装 MinGW,请访问 MinGW 的主页 www.mingw.org,进入 MinGW 下载页面,下载最新版本的 MinGW 安装程序,命名格式为 MinGW-.exe。

当安装 MinWG 时,您至少要安装 gcc-core、gcc-g++、binutils 和 MinGW runtime,但是一般情况下都会安装更多其他的项。

添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量中,这样您就可以在命令行中通过简单的名称来指定这些工具。

当完成安装时,您可以从 Windows 命令行上运行 gcc、g++、ar、ranlib、dlltool 和其他一些 GNU 工具。

关于VScode及其扩展与MinGW的安装我这里就省略了,可以参考之前的文章:

https://blog.51cto.com/mlxia/6265740

https://www.cnblogs.com/xiaml/articles/17391759.html

注意事项(参照之前的文章补充) 创建项目文件夹

创建一个空文件用来存放C++代码或者项目

image

创建源码文件

在VScode中"File"->"Open Folder"找到刚创建的文件夹并打开。

image

首先创建一个.cpp的源码文件并保存,内容如下:

#include using namespace std; // main() 是程序开始执行的地方 int main(){ cout "Command Palette...")调出命令面板,输入C/C++,选择“Edit Configurations(UI)”进入配置。这里配置两个选项: - 编译器路径:

我的环境是:D:\MinGW\C\mingw64\bin\g++.exe

这里的路径根据大家自己安装的Mingw编译器位置和配置的环境变量位置所决定。

image

你可能出现报错:

Command 'C/C++: Edit Configurations (UI)' resulted in an error (command 'C_Cpp.ConfigurationEditUI' not found)

image

更新下VScode的版本"Install Update":

image

再次重复上面的步骤:

image

在这里需要注意"Compiler path"是你的g++.exe程序的位置。我的环境是:D:\MinGW\C\mingw64\bin\g++.exe

而不是:

D:\MinGW\C\mingw64\bin\gcc.exe哦

image

IntelliSense 模式:gcc-x64(legacy)(当然是根据你自己的OS环境像对应的。)

其他的保持默认就行了。

配置完成后,此时在侧边栏可以发现多了一个.vscode文件夹,并且里面有一个c_cpp_properties.json文件,内容如下,说明上述配置成功。现在可以通过Ctrl+Add Configuration:

image

选择C++(GDB/LLDB):

image

紧接着会产生一个launch.json的文件;初始的配置内容是:

{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [] }

接下来我们可以点击Add Configuration按钮自己添加配置,也可以直接将我的配置好的json文件内容复制过去,因为些配置对新手不是特别友好,相关具体细节还是需要参考官方文档。下面是笔者的launch.json文件的内容:

{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "MyLaunch_C++", //调试配置的名称,任意你喜欢的有意义的名字均可 "preLaunchTask": "C/C++: g++.exe build active file", //调试前执行的任务,就是之前配置的tasks.json中的label字段 **注意与tasks.json文件的关联 "type": "cppdbg", //配置类型,对于C++程序只能为cppdbg "request": "launch", //请求配置类型,可以为launch(启动)或attach(附加) "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //调试程序的路径名称;这里要和tasks.json中配置为-o参数指定的输出文件一致尤其注意后缀名 **注意与tasks.json文件的关联 "args": [], //调试传递参数,默认是空的 "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, //true显示外置的控制台窗口,false显示内置终端 "MIMode": "gdb", "miDebuggerPath": "D:\\MinGW\\C\\mingw64\\bin\\gdb.exe", //**这里是你环境中mingw的gdb.exe[与g++.exe程序相同路径文件名不同]的路径哦;注意不是编译器g++.exe的路径 **注意** "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] } ] }

image

修改完成后保存关闭。

验证调试

在cpp文件中点击菜单栏的Debug-->Start Debugging或者使用快捷键F5.

image

可以看到调试程序在运行并为我们通过tasks.json的配置生成了.exe的输出文件。

image

由于我们没有为代码设置断点,因此程序并没有中途停止,大家可以尝试设置断点后进行调试。或者再代码中加入pause语句使程序中途暂停。

image

再次按F5.

image

最后:

其实,在安装了"C/C++ Extenson Pack"扩展后可以i不用创建launch.json配置文件,直接F5开始调试也是可以的。

本文写的比较细致,略显啰嗦,但是对于初学者应该是很有帮助的。

本文来自博客园,作者:夏明亮,转载请注明原文链接:https://www.cnblogs.com/xiaml/articles/17421264.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3