美文网首页
VScode | 执行c++

VScode | 执行c++

作者: yuanCruise | 来源:发表于2020-12-15 14:32 被阅读0次

    git : https://www.cnblogs.com/liluxiang/p/9474925.html

    离线下载地址:https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/

    文档地址
    https://www.zhihu.com/question/30315894

    #include <iostream>
    int main()
    {
        using namespace std;
        cout << "HelloWorld\n";
        //cout << endl;
        cout << "2333";
        return 0;
    }
    

    步骤

    1:新建文件夹a,并新建cpp
    2:点击F5就会让你在文件夹a下新建一个.vscode和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)",
                "type": "cppdbg",
                "request": "launch",
                "program": "${fileDirname}/${fileBasenameNoExtension}.exe",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${workspaceFolder}",
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "miDebuggerPath": "gdb.exe",
                "preLaunchTask":"Compile",
                "setupCommands": [
                    {
                        "description": "为 gdb 启用整齐打印",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    }
                ]
            }
        ]
    }
    

    3:在.vscode文件夹下在新建一个tasks.json文件,内容:

    {
        "version": "2.0.0",
        "tasks": [{
            "label": "Compile", // 任务名称,与launch.json的preLaunchTask相对应
            "command": "g++",   // 要使用的编译器,C++用g++
            "args": [
                "${file}",
                "-o",    // 指定输出文件名,不加该参数则默认输出a.exe,Linux下默认a.out
                "${fileDirname}/${fileBasenameNoExtension}.exe",
                "-g",    // 生成和调试有关的信息
                // "-m64", // 不知为何有时会生成16位应用而无法运行,加上此条可强制生成64位的
                // "-Wall", // 开启额外警告
                // "-static-libgcc",     // 静态链接libgcc,一般都会加上
                // "-fexec-charset=GBK", // 生成的程序使用GBK编码,不加这条会导致Win下输出中文乱码;繁体系统改成BIG5
                // "-std=c11", // 要用的语言标准,根据自己的需要修改。c++可用c++14
            ], // 编译的命令,其实相当于VSC帮你在终端中输了这些东西
            "type": "process", // process是把预定义变量和转义解析后直接全部传给command;shell相当于先打开shell再输入命令,所以args还会经过shell再解析一遍
            "group": {
                "kind": "build",
                "isDefault": true // 不为true时ctrl shift B就要手动选择了
            },
            "presentation": {
                "echo": true,
                "reveal": "always", // 执行任务时是否跳转到终端面板,可以为always,silent,never。具体参见VSC的文档
                "focus": false,     // 设为true后可以使执行task时焦点聚集在终端,但对编译C/C++来说,设为true没有意义
                "panel": "shared"   // 不同的文件的编译信息共享一个终端面板
            },
            "problemMatcher":"$gcc" // 捕捉编译时终端里的报错信息到问题面板中,修改代码后需要重新编译才会再次触发
            // 本来有Lint,再开problemMatcher就有双重报错,但MinGW的Lint效果实在太差了;用Clang可以注释掉
        }]
    }
    

    4:安装cpptools-win32.vsix,安装mingw64,并且配置环境变量。搞定。

    相关文章

      网友评论

          本文标题:VScode | 执行c++

          本文链接:https://www.haomeiwen.com/subject/fsopoctx.html