【精选】【学习笔记】VS code 安装配置C++环境&使用第三方库

您所在的位置:网站首页 vscode加视频 【精选】【学习笔记】VS code 安装配置C++环境&使用第三方库

【精选】【学习笔记】VS code 安装配置C++环境&使用第三方库

2023-11-05 07:50| 来源: 网络整理| 查看: 265

目录

DES:

Steps

11.配置launch.json

12.tasks.json

13. c_cpp_properties.json

补充:使用第三方库

总结&笔记:

背景知识

ref

​​​​​​​

DES:

安装配置VS code C++ 编译器,运行helloworld

Steps

1.VS Code 仅为文本编辑器,没有编译执行功能,要安装编译器。

2. 下载安装MinGW-w64

3. 打开vpn连接,启动安装

4.安装完启动,左侧all package,选择

mingw32-gcc.bin(c语言文件编译器)mingw32-gcc-g++.bin(c++语言编译器)mingw32-gdb.bin(调试编译后文件)

或者直接选择相应的编译配置,注意看description

5.选择好后选择applychange,等待下载完毕

6.配置环境变量:

右键我的电脑->属性->右边栏高级系统设置

环境变量->

 系统变量->path->编辑->

 选择MinGW/bin->确定

重启电脑

7.验证

打开cmd 输入g++ -v

有出现版本信息

 则安装成功

8.打开vscode,下载c++插件

9.创建.cpp文件,helloworld

10.按快捷键Ctrl+Shift+P调出命令面板,输入C/C++,选择“Edit Configurations(UI)

修改地址

11.配置launch.json

左边栏选择运行和调试->launch.json 

launch.json 是用于运行 ( run ) 和调试 ( debug ) 的配置文件,可以指定语言环境,指定调试类型等等内容。

{ "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示 "type": "cppdbg", // 配置类型,这里只能为cppdbg "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加) "program": "${workspaceFolder}//${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径 "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可 "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录 "environment": [], "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台 "MIMode": "gdb", "miDebuggerPath": "D:/MinGW/bin/gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] } ] } 12.tasks.json

tasks.json 是在 vscode 中辅助程序编译的模块,可以代你执行类似于在命令行输入 “gcc hello.c -o hello” 命令的操作,你只要在图形界面下操作即可生成可执行文件。

{ "version": "2.0.0", "tasks": [ { "type": "cppbuild",//默认配置,实质为在win的端口使用shell命令 "label": "g++",//任务的名称,可以修改,但一定要和launch中的"preLaunchTask"项保持一致 "command": "D:/MinGw/bin/g++.exe",// "args": [ "-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe", "-std=c++17"//支持C++17的版本 ], "options": { "cwd": "D:/MinGw/bin" }, "problemMatcher": [ "$gcc" ], "group": "build", "detail": "编译器: D:/MinGw/bin/g++.exe"//一些描述性信息 } ] } 13. c_cpp_properties.json

c_cpp_properties.json 主要用来设置包含头文件的路径,设置 C/C++ 支持的版本号等等

{ "configurations": [ { "name": "Win32", // 配置名称可随意更改 "includePath": [ //运行项目包含.h头文件的目录, "${workspaceFolder}/**" //此处会匹配工作文件下的所有文件 ],     //添加"compilerPath"后,系统include路径可不写明 ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "compilerPath": "D:/MinGw/bin/g++.exe",//编译器的路径 "cStandard": "c17",//C标准的版本 "cppStandard": "c++17",//C++标准的版本 "intelliSenseMode": "${default}" } ], "version": 4 }

14.按F5启动编译和运行

运行结果

补充:使用第三方库

在vscode使用中如果想使用自定义的函数库或者第三方库需要对tasks和c_cpp_properties.json中的路径进行配置。

c_cpp_properties.json

{ "configurations": [ { "name": "Win32", // 配置名称可随意更改 "includePath": [ //运行项目包含.h头文件的目录,在此处添加外部头文件路径 "${workspaceFolder}/**", "C:/test" //外部路径 //此处会匹配工作文件下的所有文件 ],     //添加"compilerPath"后,系统include路径可不写明 ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "compilerPath": "D:/MinGw/bin/g++.exe",//编译器的路径 "cStandard": "c17",//C标准的版本 "cppStandard": "c++17",//C++标准的版本 "intelliSenseMode": "${default}" } ], "version": 4 }

 tasks.json

使用  “-I” include 头文件以及源文件路径(若函数定义与声明不在一起)。

{ "version": "2.0.0", "tasks": [ { "type": "shell", "label": "g++build", "command": "D:/MinGw/bin/g++.exe", "args": [ "-g", "${file}", "-I",//引入外部头文件 "F:\\C++\\headfile", "F:\\C++\\headfile\\hello.cpp", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe", "-std=c++17" ], "options": { "cwd": "D:/MinGw/bin" }, "problemMatcher": [ "$gcc" ], "group": "build", "detail": "编译器: D:/MinGw/bin/g++.exe" } ] }

参数解读:

gcc带不同参数的含义:"-g"产生调试信息,"-c"编译中间目标文件,"-I"指定链接库,"-o"生成指定命名的可执行文件

总结&笔记:

相关代码:

${workspaceFolder} :表示当前workspace文件夹路径,也即/home/Coding/Test ${workspaceRootFolderName}:表示workspace的文件夹名,也即Test ${file}:文件自身的绝对路径,也即/home/Coding/Test/.vscode/tasks.json ${relativeFile}:文件在workspace中的路径,也即.vscode/tasks.json ${fileBasenameNoExtension}:当前文件的文件名,不带后缀,也即tasks ${fileBasename}:当前文件的文件名,tasks.json ${fileDirname}:文件所在的文件夹路径,也即/home/Coding/Test/.vscode ${fileExtname}:当前文件的后缀,也即.json ${lineNumber}:当前文件光标所在的行号 ${env:PATH}:系统中的环境变量

背景知识

gcc

GCC:GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、Pascal、Object-C、Ada等语言。

g++

g++是GCC中的GUN C++ Compiler(C++编译器)

ref

【c++】VSCode配置 c++ 环境(小白教程)

g++以及gcc的区别

GCC 参数详解

使用 VS Code 搭建轻量美观的 C/C++开发环境

launch.json / tasks.json / c_cpp_properties.json 解析 配置文件 C++ VSCode

VSCode配置C/C++并添加非工作区头文件



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3