Linux环境使用VSCode调试简单C++代码

如题所述

本文通过演示一个简单C++代码的编译调试过程,介绍在VSCode中如何使用Linux环境下的GCC C++编译器(g++)和GDB 调试器(gdb)。

关于GCC、g++、gcc、gdb,这里不做详细介绍,如果感兴趣可以参考另一篇文章。

看懂这篇文章的内容,只需要知道g++用来编译C++代码,gdb用来调试C++代码即可。

示例代码内容如下:

1. 终端命令行方式编译、调试简单C++代码

如果不考虑VSCode,在Linux环境中编译调试一个简单的C++代码可以只通过命令行实现,具体过程分为两步:

第一步:将*.cpp源代码文件通过g++编译器生成一个可调试的可执行二进制文件:

指令解析:

第二步:调用gdb调试器对可执行文件进行调试:

调试的过程如下:

2. 通过VSCode对C++代码进行编译、调试

主要参考:

2.1 前提条件

2. g++编译器和gdb调试器已安装。可以在终端查看g++是否已安装

如果能输出版本信息,则已安装。

gdb调试器可以通过下面的命令安装(安装gdb会自动安装g++):

2.2 配置tasks.json

在VSCode中打开示例代码文件夹,

1. 在VSCode的主菜单中,选择Terminal>Configure Default Build Task

2. 出现一个下拉菜单,显示 C++ 编译器的各种预定义编译任务。选择C/C++: g++ build active file(如果配置了中文,会显示 "C/C++: g++ 生成活动文件")

3. 选择后,vscode会自动生成一个.vscode文件夹和 tasks.json文件,此时的代码文件夹结构如下:

tasks.json的内容如下:

tasks.json的作用是告诉VSCode如何编译程序

在本文中是希望调用g++编译器从cpp源代码创建一个可执行文件,这样就完成了第1节中所说的编译调试第一步。

从tasks.json的"command"和"args"可以看出,其实就是执行了以下命令:

其中,

2.3 执行编译

在2.2节配置完成 tasks.json 文件后,VSCode就知道应该用g++编译器对cpp文件进行编译,下面执行编译即可:

1. 回到活动文件hello.cpp(很重要,不然 ${file} 和 ${fileDirname}这些变量都会错)

2. 快捷键ctrl+shift+B或从菜单中选择运行:Terminal -> Run Build Task,即可执行 tasks.json中指定的编译过程

3. 编译任务完成后,会出现终端提示,对于成功的g++编译,输出如下:

这一步完成后,在代码目录下就出现了一个可执行文件hello。

4. (可选) 个性化修改 tasks.json 可以通过修改 tasks.json满足一些特定需求,比如将"${file}"替换“${workspaceFolder}/*.cpp”来构建多个 C++ 文件; 将“${fileDirname}/${fileBasenameNoExtension}” 替换为硬编码文件名(如“hello.out”)来修改输出文件名

2.4 调试hello.cpp

完成上述的编译配置后,就可以对hello.cpp进行调试了:

4. 然后就开启调试过程了,可以单步运行、添加监视等等。

2.5 个性化配置launch.json

按照2.4节的过程,已经可以简单调试一个.cpp代码,但是在某些情况下,可能希望自定义调试配置,比如指定要在运行时传递给程序的命令参数。这种情况下我们可以在launch.json中定义自定义调试配置。

下面是配置调试过程的步骤:

launch.json的作用就是在告诉VS Code应该如何调用调试器。

如果想要在调试/运行程序时添加参数,只需要把参数添加在"args"选项中即可。

2.6 总结

在VSCode中编译、调试一个简单的.cpp文件,所需要做的就是:

2.7 复用C++配置

上面的过程已经完成了在VSCode中调试Linux环境下的C++代码的配置,但只适用于当前工作空间。如果想要在其他的工程文件夹下复用这种配置,只需要把tasks.json和launch.json文件复制到新文件夹下的.vscode目录下,然后根据需要改变对应的源文件和可执行文件的名称即可。

3.参考教程
温馨提示:内容为网友见解,仅供参考
无其他回答

Linux环境使用VSCode调试简单C++代码
1. 终端命令行方式编译、调试简单C++代码 如果不考虑VSCode,在Linux环境中编译调试一个简单的C++代码可以只通过命令行实现,具体过程分为两步:第一步:将*.cpp源代码文件通过g++编译器生成一个可调试的可执行二进制文件:指令解析:第二步:调用gdb调试器对可执行文件进行调试:调试的过程如下:2. 通...

vscode远程调试Linux系统中的c++程序
1. 在VSCode中安装远程开发插件,以便实现与Linux服务器的连接。2. 使用安装好的远程开发插件,连接到你的Linux服务器。确保在Linux服务器上已配置SSH服务,以允许远程访问。3. 在Linux服务器上,确保已安装了openssh,这将帮助你实现与VSCode的连接,确保远程调试过程的流畅。完成以上步骤后,你便能顺利...

linux平台,c语言\/c++开发,vscode和clion哪个好?
在Linux平台上进行C或C++开发,选择使用VSCode还是CLion主要取决于你的预算和开发需求。对于那些预算充裕的开发者,CLion无疑是一个更专业的选择。它是由JetBrains公司开发的,专门针对C和C++语言设计的集成开发环境(IDE),提供了丰富的特性,如代码分析、调试、重构和版本控制集成等。CLion能够显著提升开发...

vscode怎么调试c语言 调试步骤
1、打开你要写c++程序的文件夹,我们这里新建一个Test文件夹并打开test,打开后:使用VScode运行调试C\/C++,在左侧打开的目录中新建一个 main.cpp 文件。2、新建后点左侧的调试按钮(英文:Debug),可以看到,目前没有调试配置。3、这时我们需要配置自己的调试配置,回到资源管理器界面,我们可以看到目录...

使用VSCODE 对 C 进行调试
首先确保在 linux 上已安装 C 开发必要的程序包:必要的 vscode 扩展:local:ssh-linux:C\/C++ 接下来创建调试引导文件(launch.json)如果当前 workshop 没有调试引导文件(launch.json),则可以通过侧边栏调试按钮>Run and Debug 创建默认 launch.json 在弹出的环境选择框中,选择 C++ 即可 如此便...

如何在vscode上实现python与c++的混合调试?
在VSCode上实现Python与C++的混合调试,首先需要了解GDB或Windbg等调试器以及如何在编译时生成调试符号。对于Linux环境,确保已安装GDB,使用编译参数-g在C\/C++代码编译时生成调试信息;对于Windows,需要在编译时添加\/Zi参数,并在链接时使用\/DEBUG。若使用Cython编译,由于其默认包含-g参数,生成的whl文件...

vscode怎么运行c++代码-vscode运行代码步骤教程
步骤如下:首先进入VSCode的左侧栏,点击应用扩展工具,如图所示。接着,根据需要运行的代码类型,搜索相应的插件。例如,若要运行HTML代码,则应使用“Open in Default Browser”插件。对于C++和Python代码,推荐使用“Code Runner”插件。安装好插件后,只需输入要运行的代码,然后在空白处右键点击,选择已...

Linux环境下使用VScode调试CMake工程
接下来,调试CMake工程就变得简单了。编译完成后,VSCode会自动识别生成的可执行文件helloCMake。在launch.json中,需要配置使用gdb调试器,指定要调试的文件和断点位置。只需在helloCMake.cpp文件中设置断点,通过F5键即可启动调试。总的来说,通过VSCode和CMake的结合,即使在Linux环境中,管理和调试C++...

VScode编写调试C++程序方法
本文旨在指导如何使用VScode编写和调试C++程序。首先,访问VScode官网下载并安装软件。安装完成后,确保界面设置为简体中文。其次,安装必需的插件,包括C\/C++、C\/C++ Runner和Code Runner,以及推荐的Rainbow Brackets和C\/C++ Clang Command Adapter。这些插件将显著提升编程体验。随后,配置编译环境。安装TDM-...

VSCode之C++环境极简配置
首先,安装VSCode。下载安装步骤简单,只需学会上网即可完成。若还未学会上网,请先学习相关知识。安装完成后,配置C++环境。确保你的C++环境已安装,具体方法根据你的操作系统而定。安装C++扩展,搜索“C++”,找到对应插件进行安装。如使用远程开发(如WSL或远程连接Linux\/Mac),则需在远程连接后重新搜索...

相似回答
大家正在搜