编程语言
首页 > 编程语言> > VSCode C++环境配置

VSCode C++环境配置

作者:互联网

方案一:

launch.json

{

// Use IntelliSense to learn about possible attributes.

// Hover to view descriptions of existing attributes.

// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387

"version": "0.2.0",

"configurations": [

{

"name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示

"type": "cppdbg", // 配置类型,这里只能为cppdbg

"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)

"program": "${workspaceFolder}/${fileBasenameNoExtension}.out",// 将要进行调试的程序的路径

"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可

"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false

"cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录

"environment": [],

"externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台

"MIMode": "gdb",

"setupCommands": [

{

"description": "Enable pretty-printing for gdb",

"text": "-enable-pretty-printing",

"ignoreFailures": true

}

],

"preLaunchTask": "Compile", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc

//"miDebuggerPath": "/usr/bin/gdb" // miDebugger的路径,注意这里要与MinGw的路径对应

}

]

}

 

tasks.json

{

"version": "2.0.0",

"tasks": [

{

"label": "Compile", // 任务名称,与launch.json的preLaunchTask相对应

"command": "g++", // 要使用的编译器 clang++ 或者g++

"args": [

"${file}",

"-o", // 指定输出文件名,不加该参数则默认输出a.exe,Linux下默认a.out

"${workspaceFolder}/${fileBasenameNoExtension}.out",

"-g", // 生成和调试有关的信息

"-Wall", // 开启额外警告

"-static-libgcc", // 静态链接

// "-fcolor-diagnostics", // 彩色的错误信息?但貌似clang默认开启而gcc不接受此参数

// "--target=x86_64-w64-mingw", // clang的默认target为msvc,不加这一条就会找不到头文件;Linux下去掉这一条

"-std=c++11" // C语言最新标准为c11,或根据自己的需要进行修改

], // 编译命令参数

"type": "shell", // 可以为shell或process,前者相当于先打开shell再输入命令,后者是直接运行命令

"group": {

"kind": "build",

"isDefault": true // 设为false可做到一个tasks.json配置多个编译指令,需要自己修改本文件,我这里不多提

},

"presentation": {

"echo": true,

"reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never。具体参见VSC的文档

"focus": false, // 设为true后可以使执行task时焦点聚集在终端,但对编译c和c++来说,设为true没有意义

"panel": "shared" // 不同的文件的编译信息共享一个终端面板

}

// "problemMatcher":"$gcc" // 如果你不使用clang,去掉前面的注释符,并在上一条之后加个逗号。照着我的教程做的不需要改(也可以把这行删去)

}

]

}

 

方案二:

launch.json

{

// Use IntelliSense to learn about possible attributes.

// Hover to view descriptions of existing attributes.

// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387

"version": "0.2.0",

"configurations": [

{

"name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示

"type": "cppdbg", // 配置类型,这里只能为cppdbg

"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)

"program": "${workspaceFolder}/${fileBasenameNoExtension}.o",// 将要进行调试的程序的路径

"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可

"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false

"cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录

"environment": [],

"externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台

"MIMode": "gdb",

"setupCommands": [

{

"description": "Enable pretty-printing for gdb",

"text": "-enable-pretty-printing",

"ignoreFailures": true

}

],

"preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc

//"miDebuggerPath": "/usr/bin/gdb" // miDebugger的路径,注意这里要与MinGw的路径对应

}

]

}

 

tasks.json

{

"version": "2.0.0",

"command": "g++",

"args": ["-g","${file}","-o","${fileBasenameNoExtension}.o"], // 编译命令参数

"problemMatcher": {

"owner": "cpp",

"fileLocation": ["relative", "${workspaceFolder}"],

"pattern": {

"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",

"file": 1,

"line": 2,

"column": 3,

"severity": 4,

"message": 5

}

}

}

标签:launch,VSCode,配置,json,C++,++,gdb,workspaceFolder,true
来源: https://blog.csdn.net/mt_lixinzeng/article/details/100890131