VScode+GDB原生调试
1.首先建立一个文件夹,在里面创建一个.c文件,然后通过VScode打开这个文件夹(注意是打开文件夹,不是.c文件)![在这里插入图片描述](https://img-blog.csdnimg.cn/db39e96b31734762aa25b0b1d3076fb9.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_15,color_FFFFFF,t_70,g_se,x_16)
2.随意编写一段正确的代码,按Ctrl+~打开下面的终端
![在这里插入图片描述](https://img-blog.csdnimg.cn/0f008da945c44ae6ba1495e0bd9af9cb.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
3.编译
1.生成可执行文件:gcc -g xxx.c -o xxx.exe 2.执行:./xxx.exe ![](https://img-blog.csdnimg.cn/53d4bc7faf274c14802d916b5b94b4b8.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
4.右键点击生成和调试文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/228429b5f6604d55bd6bd632a0713aa1.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
5.点击gcc.exe - 生成和测试活动文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/2856a1a2a3df4f6e94f21417006d742b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
6.点击停止和关闭终端
![在这里插入图片描述](https://img-blog.csdnimg.cn/81df49c38fc140919c9d4e2a1d53b7de.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
7.点击非调试运行
![在这里插入图片描述](https://img-blog.csdnimg.cn/e6a48a093c5d4c3d911f727f4e7d03c9.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/db5c678886784dd1bc3bd7a634c65948.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
8.选择调试器生成的任务
![在这里插入图片描述](https://img-blog.csdnimg.cn/c5af03bf98a347409d5ad65ccf7a247e.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
9.“externalConsole”: false,改成"externalConsole": true,
![在这里插入图片描述](https://img-blog.csdnimg.cn/b8eb810368944859a490f0ef06c009d4.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
10.保存Ctrl+s
11.回到.c文件打断点,按f5进行调试,在缓冲区输入数据
![在这里插入图片描述](https://img-blog.csdnimg.cn/f26270c8f15845a4be4f4f6f984506ad.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
12.黄色小框表示我们的代码已经运行在哪一行,按F5或点击单步调试,代码就会根据我们设置的断点跳到下一个断点的位置代码
![在这里插入图片描述](https://img-blog.csdnimg.cn/ee801ce0c4484c9b9d7e8261b954c682.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
13.笔者按了几次F5,通过窗口我们观察到它进行了两次打印,如果想让代码继续运行下去,就再此按F5(注意不要关闭窗口,否则再次打开窗口时,代码会重头开始运行)
![在这里插入图片描述](https://img-blog.csdnimg.cn/d75559c1e9f8471d99fe8ebf00931a17.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGhlIGhlYXJ0IG9mIGdyYXRpdHVkZQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
14.我们也可以通过左边的监视窗口输入我们想要监视的表达式,来监视变量的值
13.我们也可以通过左边的监视窗口输入我们想要监视的表达式,来监视变量的值
|