网站推广.NET

网站推广.NET

vscode配置c语言编译环境

来源:互联网

一、下载mingw-w64 gcc-8.1.0编译器(本文安装 x86_64-win32-seh)

二、环境配置

打开你的mingw-w64安装目录,我是默认安装的在C:\Program Files (x86),里面的MinGW-W64就是安装的编译器了,将里面的bin文件夹加入路径,我的就是C:\Program Files (x86)\mingw64\bin,将这个加入路径即可。

路径加入方法:

立即学习“C语言免费学习笔记(深入)”;

加入后,建议重启一下电脑。

三、安装VSCode cpp相关的插件

c++插件

重启vscode软件。

四、配置c++的.vscode文件

在你写代码的地方新建文件夹并在里面新建一个文件夹,然后在文件夹里面创建一个.vscode文件夹

然后在.vscode文件夹里面创建如上图所示的四个文件,文件名如下:

c_cpp_properties.json
launch.json
tasks.json

请根据安装的位置来修改文件路径(如果跟我一样可以不要修改)

launch.json

{    "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}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 workspaceRoot已被弃用,现改为workspaceFolder            "environment": [],            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台            "MIMode": "gdb",            "miDebuggerPath": "C:/Program Files (x86)/mingw64/bin/gdb.exe",             // miDebugger的路径,注意这里要与MinGw的路径对应            "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc            "setupCommands": [                {                    "description": "Enable pretty-printing for gdb",                    "text": "-enable-pretty-printing",                    "ignoreFailures": false                }            ]        }    ]}

tasks.json

如果遇到找不到文件 比如这样:

把 "${workspaceFolder}"替换为 "\\"或 "//"

{    "version": "2.0.0",    "command": "g++",    "args": [        "-g",        "${file}",        "-o",        "${fileBasenameNoExtension}.exe"    ], // 编译命令参数    "problemMatcher": {        "owner": "cpp",        "fileLocation": [            "relative",            "${workspaceFolder}"        ],        "pattern": {            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",            "file": 1,            "line": 2,            "column": 3,            "severity": 4,            "message": 5        }    }}

c_cpp_properties.json

"includepath"设置问题 路径获取获取方法为:cmd——》gcc -v -E -x c++ -

如果第一种出错请使用第二种

{    "configurations": [        {            "name": "Win32",            "includePath": [                "${workspaceRoot}",                "C:/Program Files (x86)/mingw64/include/**",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"            ],            "defines": [                "_DEBUG",                "UNICODE",                "__GNUC__=6",                "__cdecl=__attribute__((__cdecl__))"            ],            "intelliSenseMode": "msvc-x64",            "browse": {                "limitSymbolsToIncludedHeaders": true,                "databaseFilename": "",                "path": [                    "${workspaceRoot}",                    "C:/Program Files (x86)/mingw64/include/**",                    "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",                    "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",                    "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",                    "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"                ]            }        }    ],    "version": 4}

第二种

{    "configurations": [        {            "name": "Win32",            "includePath": [                "C:/Program Files (x86)/mingw64/include/**",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",                "C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","C:/Program Files (x86)/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"            ],            "browse": {                "limitSymbolsToIncludedHeaders": true,                "databaseFilename": ""            }        }    ],    "version": 4}

五、配置c语言的.vscode文件

在你写代码的地方新建文件夹和里面新建一个文件夹,然后在文件夹里面创建一个.vscode文件夹

然后在.vscode文件夹里面创建如上图所示的四个文件,文件名如下
launch.json
tasks.jsonlaunch.json

{    "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}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 workspaceRoot已被弃用,现改为workspaceFolder            "environment": [],            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台            "MIMode": "gdb",            "miDebuggerPath": "C:/Program Files (x86)/mingw64/bin/gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应            "preLaunchTask": "gcc", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc            "setupCommands": [                {                    "description": "Enable pretty-printing for gdb",                    "text": "-enable-pretty-printing",                    "ignoreFailures": false                }            ]        }    ]}

tasks.json

{    "version": "2.0.0",    "command": "gcc",    "args": [        "-g",        "${file}",        "-o",        "${fileBasenameNoExtension}.exe"    ]}

相关文章教程推荐:vscode教程

vscode c语言配置