Linux下vscodeのC/C++编程环境调试(for real小白)

1、用vscode对文件进行简单地编译:

  • 创建一个目录demo1,并进入。然后打开vscode:
    在这里插入图片描述

  • 用C语言写完hello world之后,新建一个终端,代码下方就会出现一个终端窗口:在这里插入图片描述

  • 终端输入gcc --version检查一下你的gcc能否正常工作,第一次使用一般需要进行安装,终端输入sudo apt install gcc进行安装:
    在这里插入图片描述

  • 安装完毕后,可以对文件进行编译,终端输入

gcc -g -o hello.out hello.c

将hello.c编译成二进制文件,-o后面是输出文件的名字,-g为了debug时能和源程序同时进行。

  • 编译完成后可以看到demo1下出现了hello.out二进制文件。
    在这里插入图片描述

  • 终端输入file hello.out可以查看.out文件的类型,从而判断能否执行该文件。在linux下要执行一个文件,这个文件的扩展名可以不是exe,只要有可执行属性就行,注意有的程序规定必须用sudo的方式执行。在这里插入图片描述

  • 输入./hello.out执行该文件,./的作用是指定当前目录,没有的话会报错“找不到”。下图是执行成功后终端出现的反馈:
    在这里插入图片描述

2、vscode编译环境调试:

  • 首先装上C/C++的扩展插件(图中第一个):
    在这里插入图片描述

- tasks.json文件的设定:

找到view,其中的command palette。输入task,选择下拉菜单中的Configure Default Build Task(第一次 进行配置,以后就可以选择Run build task,热键为Ctrl+Shift+B),然后选择gcc build active file(不要选-7的,因为选这个之后即便gcc更新了他还会使用-7的gcc版本进行编译)。选完之后会出现tasks.json文件。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下面对tasks.json进行设定:
在这里插入图片描述
“label”处可以选择加上“My”,用以区分:
在这里插入图片描述
arguments里面的选项就是简单编译时输入的指令,${file}是源程序的文件名,顺序没关系,但要注意-o选项后是跟的是输出文件名,所以我们希望输出文件后缀为.out(不加的话输出的可执行文件就是hello),所以在末尾加上.out后缀。
在这里插入图片描述
tasks文件设定完,就可以用热键Ctrl+Shift+B进行编译了。

在这里插入图片描述
编译前后.out文件的时间发生改变,源程序每次改动都需要重新编译

- c_cpp_properties.json文件的设定:

view中command palette选项输入C/C++,点击Edit Configurations(UI)找智能提醒的配置(IntelliSense)文件,也就是C/C++代码编写时的智能提醒的出处,文件打开一次即可,里面的设定已经配置好:

在这里插入图片描述
.vscode文件会出现如图所示的c_cpp……文件
- debug的过程:

第一次,首先要找打开launch.json并进行配置:
在这里插入图片描述
选择C++(GDB/LLDB):
在这里插入图片描述

又双叒叕选gcc?!果断第二个:
在这里插入图片描述
然后生成了一个launch.json文件:在这里插入图片描述
下面对launch.json文件进行配置:

名字加点特殊标识用以区分(比如前缀“My ”):
在这里插入图片描述
program要进行调试的输出结果,因为前面tasks文件中对输出文件的要求中加了.out所以这里也加上:
在这里插入图片描述
arguments中若需要输入命令行的参数,则可以在arg中加入(示例如图),在调试的时候加入的内容会自动加到可执行文件的后面,作为命令行的参数。
在这里插入图片描述
stopAtEntry把false改为true:
在这里插入图片描述
如果不想文件进行连接link(C语言中叫生成build),可以把如图一行代码注释掉。
在这里插入图片描述
以上对launch.json文件配置完毕,可以进行debug。
点击小虫子,在目标语句前面打个红色断点,然后点击绿色三角开始debug:

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

塞北小国

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值