• vscode配置编译运行调试C/C++文件-windows环境


    在windows环境下,编译运行小文件的C/C++环境

    软件准备:

    vscode

    mingw64(官网下特别慢,可以在devc++安装软件里中找,放到全局变量中)

    插件下载:

    Run Code

    C/C++

    运行配置:

    安装好编译器和运行插件后,C/C++程序就可以运行了。

    调试配置:

    调试配置需要添加两个文件,在当前文件夹下,生成一个.vscode文件夹,里面生成两个文件

    launch.json
    
    {
        "version": "0.2.0",
        "configurations": [
    
            {
                "name": "(gdb) Launch",    // 配置名称,将会在启动配置的下拉菜单中显示
                "type": "cppdbg",         // 配置类型,这里只能为cppdbg
                "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)
                "program": "${workspaceRoot}/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径
                "args": [],                // 程序调试时传递给程序的命令行参数,一般设为空即可
                "stopAtEntry": false,     // 设为true时程序将暂停在程序入口处,一般设置为false
                "cwd": "${workspaceRoot}",// 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录
                "environment": [],
                "externalConsole": false,// 调试时是否显示控制台窗口,一般设置为true显示控制台
                "MIMode": "gdb",
                "miDebuggerPath": "C:\mingw64\bin\gdb.exe",// miDebugger的路径,注意这里要与MinGw的路径对应
                "preLaunchTask": "g++",    // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc
                "setupCommands": [
                    {
                        "description": "Enable pretty-printing for gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    }
                ]
            }
        ]
    }
    tasks.json
    {
        "version": "2.0.0",
        "command": "g++",
        "args": ["-g","${file}","-o","${fileBasenameNoExtension}.exe"], // 编译命令参数
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": ["relative", "${workspaceRoot}"],
            "pattern": {
                "regexp": "^(.*):(\d+):(\d+):\s+(warning|error):\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
      }
  • 相关阅读:
    漫谈设计模式(三):桥接(Bridge)模式 —— 将类功能、结构两层次分离
    深入理解spring中的AOP原理 —— 实现MethodInterceptor接口,自已动手写一个AOP
    Python面向对象之什么是类(1)
    Python常用模块之logging模块
    Python常用模块之xml模块
    Python常用模块之hashlib
    linux基础命令(一)
    DateTime字段控件值显示短格式的做法
    .net中除去IList中的多余项
    jquery点击按钮显示和隐藏DIv
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/12076302.html
Copyright © 2020-2023  润新知