VS Code 下调试c/c++程序
参考B站视频:link
在 linux 下开发一定要熟悉 GCC 和 GDB ,VS Code是通过调用 GCC 编译器来实现 C/C++ 的编译工作的;通过调用 GDB 来实现调试工作的。
前提
在 linux 下先安装编译器和调试器
//安装gcc,gdb
sudo apt update
//通过以下命令安装编译器和调试器
sudo apt install build-essential gdb
//以下命令确定每个软件是否安装成功
//如果成功,则显示版本号
gcc --version
g++ --version
gdb --version
安装cmake
//通过以下命令安装编译器和调试器
sudo apt install cmake
//确认是否安装成功
//如果成功,则显示版本号
cmake --version
实际操作流程
示例一
1.在某个文件夹下打开终端,新建一个工程文件夹vscode_c_learning1,并在新建的文件夹下打开vscode
mkdir vscode_c_learning1
cd vscode_c_learning1/
code .
2.新建文件:helloworld.cpp
3.在helloworld.cpp中写个简单的代码,然后保存(不保存的话编译会报错)
4.然后"ctrl" + "`"在 VS Code 打开终端,输入:
g++ helloworld.cpp -o helloworld
注:-o后面为生成可执行文件的命名
运行,可以看出生成了可执行文件helloworld
示例二
1.在某个文件夹下打开终端,新建一个工程文件夹vscode_c_learning2,并在新建的文件夹下打开vscode
mkdir vscode_c_learning2
cd vscode_c_learning2/
code .
2.通过这个去新建两个文件夹:include 和 src
3.在 include 下面点击 new_file 新建一个swap.h 文件,在 src 下面新建一个 swap.cpp 文件,然后编辑 swap.h 和 swap.cpp 文件。可以右击编辑栏上文件的文字,选择 split 某个方向,分栏同时编辑。也可以按 F11 快捷键进行全屏和不全屏切换。
4.在写class后会出现这个,按下 tab键, 会根据你的头文件命名自动生成一个类
5.写好swap.h 和 swap.cpp 文件:
6.在VSCODE_C_LEARNING2下新建 new_file 文件 main.cpp
发现程序报错,说swap 不明确,原来是由于 swap 是 C++ 中的关键字,不能用于类名。将所有的 swap 改为 swap1后,程序不报错。
7.然后"ctrl" + "`"在 VS Code 打开终端,输入:
g++ main.cpp src/swap.cpp -Iinclude -o main
注:-o后面为生成可执行文件的命名
运行,可以看出生成了可执行文件main
运行 ./main即可看到输出结果。
一些技巧
1.打开文件时,点击一次,可以看到编辑栏上方该文件的名字为斜体,这时打开其他文件该文件会被覆盖掉,若不想覆盖该文件,想让该文件一直保持打开,则在该文件的名字上双击。
或者以后打开文件时都直接双击,这样打开其他文件时就不会关闭以前打开的文件。
2.有可能代码在编写更改时写的比较乱,可以通过格式化代码将代码弄成标准风格,在文件编辑处,右键选择 " Format Document",或者使用快捷键"Ctrl + Shift +i"
3.切换全屏快捷键F11
4.变量替换快捷键 Ctrl +h
一些细节
1.在编译之前记得保存,不保存编译会报错