开发环境Ubuntu 中使用 VSCode 开发 C/C++ ⑤ ( tasks.json 中的 args 数组配置分析 | 编译并执行 C++ 程序 )

贵有恒,何必三更起、五更眠、最无益,只怕一日曝、十日寒。这篇文章主要讲述开发环境Ubuntu 中使用 VSCode 开发 C/C++ ⑤ ( tasks.json 中的 args 数组配置分析 | 编译并执行 C++ 程序 )相关的知识,希望能为你提供帮助。




文章目录

  • ??一、tasks.json 中的 args 数组配置分析??
  • ??二、编译并执行 C++ 程序??




可以参考官方提供的文档 : ??https://code.visualstudio.com/docs/cpp/config-linux??




使用 VSCode 开发 C/C++ 程序 , 涉及到 333 个配置文件 :
① tasks.json : 编译器构建 配置文件 ;
【开发环境Ubuntu 中使用 VSCode 开发 C/C++ ⑤ ( tasks.json 中的 args 数组配置分析 | 编译并执行 C++ 程序 )】② launch.json : 调试器设置 配置文件 ;
③ c_cpp_properties.json : 编译器路径和智能代码提示 配置文件 ;
下面开始逐个 生成 上述配置文件 ;






一、tasks.json 中的 args 数组配置分析

tasks.json 构建脚本内容如下 :

"version": "2.0.0",
"tasks": [

"type": "cppbuild",
"label": "C/C++: g++ 生成活动文件",
"command": "/usr/bin/g++",
"args": [
"-fdiagnostics-color=always",
"-g",
"$workspaceFolder/*.cpp",
"-o",
"$fileDirname/$fileBasenameNoExtension"
],
"options":
"cwd": "$fileDirname"
,
"problemMatcher": [
"$gcc"
],
"group":
"kind": "build",
"isDefault": true
,
"detail": "编译器: /usr/bin/g++"

]

其中的 “args” 参数是 g++ 编译器后的参数 ;
"args": [
"-fdiagnostics-color=always",
"-g",
"$workspaceFolder/*.cpp",
"-o",
"$fileDirname/$fileBasenameNoExtension"
],

  • ??-fdiagnostics-color=always?? 彩色警告 ;
  • ??-g?? 编译器编译时 , 产生调试信息 ;
  • ??$workspaceFolder/*.cpp?? 配置的是源文件 , 在目录下的 cpp 后缀的是源文件 ;
  • ??-o?? 编译时的输出路径 ;
  • ??$fileDirname/$fileBasenameNoExtension??? 编译输出的可执行文件 ,??$fileDirname??? 目录是 .vscode ,??$fileBasenameNoExtension??? 是 task , 输出路径是??.vscode/task?? ;


二、编译并执行 C++ 程序

使用 Ctrl + Shift + B 快捷键 , 即可完成编译操作 ;
也可以在菜单栏中选择 " 终端 / 运行任务 " ,

选择 " C/C++:g++ 生成活动文件 " 选项 ,

编译完成 ;
> Executing task: C/C++: g++ 生成活动文件 <

正在启动生成...
/usr/bin/g++ -fdiagnostics-color=always -g /home/octopus/vscode/helloworld/*.cpp -o /home/octopus/vscode/helloworld/.vscode/tasks

生成已成功完成。

终端将被任务重用,按任意键关闭。


生成的可执行文件在 .vscode 目录下 , 名称是 task ;
执行 ??cd .vscode?? 命令 , 进入 .vscode 目录中 ,
使用 ??./task?? 命令 , 执行该 task 可执行文件 , 打印如下内容 ;
Hello C++ World from VS Code and the C++ extension!







    推荐阅读