记录 | vscode launch.json和task.json的用途用法

Tasks.json

按编译逻辑来说,先讲tasks.json

先贴图:

记录 | vscode launch.json和task.json的用途用法_第1张图片

  • "label": 对应launch.json中的 "preLaunchTask";(一定要一致,决定了launch.json之前先运行哪个配置,tasks是一个array类型,里面理论来说可以存多个配置)
  • "command": 这个是编译器的命令,相当于选择了哪个编译器 (我配置了环境变量,所以这里是g++.exe,没有配置的话可能就需要按照 路径\\g++.exe来配置)
  • "args":编译器后面的命令,可以和command一起看 , 连起来简便看就是 g++ -g filename -o -finame.exe

这几个综合来说就是把一个.cpp文件编译成了一个可执行文件 .exe,这就是tasks.json的主要工作内容

launch.json

先贴图:

记录 | vscode launch.json和task.json的用途用法_第2张图片

  • "preLaunchTask":在执行launch.json之前需要先执行task.json,对应tasks.json的"label",看哪个label和他匹配,就执行哪个task
  • "program":可执行的文件,相当于选择了哪个可执行文件等一下要去运行
  • "miDebuggerPath":调试程序路径,这里一定要选择gdb,因为他是debug的时候用的,博主之前以为他是选择用哪个编译器,然后用的一直都是gcc/g++ 所以一直有问题,后面纠正过来就好了。(他的路径参数就需要根据自己的mingw64/bin下的路径来填)

综合来说这个launch.json就是把一个可执行文件.exe 执行起来,可以运行也可以debug。

所以这两个文件结合一下就达到了把一个.cpp文件或.c文件(这里用的是g++编译器,所以是.cpp文件,如果需要编译.c文件,只需要再配置一个gcc编译器即可)先由tasks.json编译为可执行文件filename.exe/.out (或者直接-o filename 都是可以的),然后再由launch.json把一个.exe/.out 文件执行起来。

你可能感兴趣的:(踩坑记录,vscode,launch.json,task.json)