VS Code 配置C++ 详解

VS Code 配置C++ 详解

  • 我太难了一开始对配置一窍不通各种坑都踩过了,最后被逼无奈去学习了lauch.json还有tasks.json等文件的含义,才配置好了C++
  • 下面我写一个小白配置教程
  • 首先下载VS Code还有MinGW,在VS Code商店里下载插件:Chinese、C/C++、CodeRunner、Include Autocomplete
  • 然后创建一个HelloWorld.cpp然后点击调试,发现它要你选择环境,选择C++(GDB/LLDB),再选g++.exe,生成和调试活动文件,你会发现你的目录下多了一个.vscode文件,这就是配置文件夹,然后你进入到lauch.json里,把我这一段拷进去:
  • {
       "version": "0.2.0",
       "configurations": [
          {
             "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示
             "type": "cppdbg",       // 配置类型,这里只能为cppdbg
             "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)
             "program": "${fileDirname}/${fileBasenameNoExtension}",// 将要进行调试的程序的路径
             "args": [],             // 程序调试时传递给程序的命令行参数,一般设为空即可
             "stopAtEntry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false
             "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录
             "environment": [],
             "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
             "MIMode": "gdb",
             "miDebuggerPath": "C:\\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
             }
             ]
          }
       ]
    }
    
    
  • 注意,把miDebuggerPath的内容改成你自己的。
  • 然后再次回到HelloWorld程序,再次点击调试,发现它说找不到任务g++,不慌,点击配置任务,选择C/C++:cpp.exe build active file(第一个),然后你会发现在.vscode文件夹下多了一个tasks.json,进去,把我的这一段拷进去:
  • {
        "version": "2.0.0",
        "tasks": [
            {
                "type": "shell",
                "label": "g++", //这里注意一下,见下文
                "command": "C:\\MinGW\\bin\\g++.exe",
                "args": [
                    "-g",
                    "${file}",
                    "-o",
                    "${fileDirname}\\${fileBasenameNoExtension}.exe",
                    "-ggdb3",   // 生成和调试有关的信息
                    "-Wall",    // 开启额外警告
                    "-static-libgcc",   // 静态链接
                    "-std=c++17",       // 使用c++17标准
                    "-finput-charset=UTF-8",    //输入编译器文本编码 默认为UTF-8
                    "-fexec-charset=GB18030",   //输出exe文件的编码
                    "-D _USE_MATH_DEFINES"
                ],
                "options": {
                    "cwd": "C:\\MinGW\\bin"
                },
                "problemMatcher": [
                    "$gcc"
                ],
                "presentation": {
                    "echo": true,
                    "reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never
                     "focus": false,
                     "panel": "shared" // 不同的文件的编译信息共享一个终端面板
                },
            }
        ]
    }
    
    
  • 把command和cwd换成你们自己的路径就好了。
  • 大功告成,接下来打开HelloWorld点击调试就可以运行了!
  • 但我的.vscode下还有一个c_cpp_properties.json文件,这个大家想加就加吧,如果想配置完全跟我一样的话
  • 这个文件要自己建,文件名如上,进入把我这一段复制进去:
  • {
        "configurations": [
            {
                "name": "MinGW64",
                "intelliSenseMode": "gcc-x64",
                "compilerPath": "C:\\MinGW\\bin\\g++.exe",
                "includePath": [
                    "${workspaceFolder}"
                ],
                "cppStandard": "c++17"
            }
        ],
        "version": 4
     }
    
    
  • 将compilerPath换成你自己的。
  • OK,愉快地用VS Code写代码吧!
  • 更新(有朋友反馈了几个问题,我回答一下):
    1. 路径不能有中文
    2. 有些古董MinGw里没有gdb,注意看看自己MinGw文件夹下有没有gdb.exe
    3. 没有配置环境变量
      • 先将自己MinGw里的bin路径拷贝下来,我的是:C:\MinGW\bin
      • 然后右键“计算机”,点击属性,点击高级系统设置,点击环境变量,在用户变量中,找到Path这个变量,(没有就自己建),点击编辑,在最后面加上 ;你MinGw的bin路径,我的成果是这样子的(用记事本打开了方便看):
      • 然后在系统变量里找到Path(没有就自己建),同样在结尾加上 ;你MinGw的bin路径。
      • 保存好,退出,再进入VS Code调试,就好了。
  • 各位朋友还碰到什么问题欢迎下方留言

原文地址:https://www.cnblogs.com/BigYellowDog/p/12638112.html

时间: 2024-10-13 05:28:43

VS Code 配置C++ 详解的相关文章

[转载,感觉写的非常详细]DUBBO配置方式详解

[转载,感觉写的非常详细]DUBBO配置方式详解 原文链接:http://www.cnblogs.com/chanshuyi/p/5144288.html DUBBO 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是阿里巴巴 SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点. Dubbo采用全spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Sp

使用HeartBeat实现高可用HA的配置过程详解

使用HeartBeat实现高可用HA的配置过程详解 一.写在前面 HA即(high available)高可用,又被叫做双机热备,用于关键性业务.简单理解就是,有2台机器 A 和 B,正常是 A 提供服务,B 待命闲置,当 A 宕机或服务宕掉,会切换至B机器继续提供服务.常见的实现高可用的开源软件有 heartbeat 和 keepalived. 这样,一台 web 服务器一天24小时提供web服务,难免会存在 web 服务挂掉或服务器宕机宕机的情况,那么用户就访问不了服务了,这当然不是我们期望

Nginx实现集群的负载均衡配置过程详解

Nginx实现集群的负载均衡配置过程详解 Nginx 的负载均衡功能,其实实际上和 nginx 的代理是同一个功能,只是把代理一台机器改为多台机器而已. Nginx 的负载均衡和 lvs 相比,nginx属于更高级的应用层,不牵扯到 ip 和内核的修改,它只是单纯地把用户的请求转发到后面的机器上.这就意味着,后端的 RS 不需要配置公网. 一.实验环境 Nginx 调度器 (public 172.16.254.200 privite 192.168.0.48)RS1只有内网IP (192.168

Spartan6系列之芯片配置模式详解

1.   配置概述 Spartan6系列FPGA通过把应用程序数据导入芯片内部存储器完成芯片的配置.Spart-6 FPGA可以自己从外部非易失性存储器导入编程数据,或者通过外界的微处理器.DSP等对其进行编程.对以上任何一种情况,都有串行配置和并行配置之分,串行配置可以减少芯片对引脚的要求,并行配置对8bit/16bit Flash或者微处理器来说更合适. 因为Xilinx的FPGA器件的配置数据存储在CMOS 配置锁存器内(CCL),因此Spartan6 FPGA器件上电后必须重新配置.Sp

CentOS7下Firewall防火墙配置用法详解

官方文档地址: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html#sec-Introduction_to_firewalld1 修改防火墙配置文件之前,需要对之前防火墙做好备份 重启防火墙后,需要确认防火墙状态和防火墙规则是否加载,若重启失败或规则加载失败,则所有请求都会被防火墙拦截 1 2 3 4 5 6 7

nginx配置参数详解

配置参数详解 user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目.根据硬件调整,通常等于CPU数量或者2倍于CPU. error_log  logs/error.log;  error_log  logs/error.log  notice;  error_log  logs/error.log  info;  错误日志:存放路径. pid logs/nginx.pid; pid(进程标识符):存放路径

Linux LVM逻辑卷配置过程详解

Linux LVM逻辑卷配置过程详解 许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份.删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足应用系统的需要. LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.RHEL5默认安装的分区格式就是LVM逻辑卷的格式,需要注意的是/boot分区不能基于LVM创建,必须独立出

httpd(2.2&2.4)RPM搭建配置定义详解

一.RPM包安装配置程序环境 1.CentOS6系列(默认httpd2.2) (1)配置文件:/etc/httpd/conf/httpd.conf.  /etc/httpd/conf.d/*.conf() (2)服务脚本:/etc/rc.d/init.d/httpd 配置文件:/etc/sysconfig/httpd (3)主程序文件:/usr/sbin/httpd.  /usr/sbin/httpd.event.  /usr/sbin/httpd.worker (4)日志文件目录:/var/l

OSChina 技术周刊第二十二期 —— DUBBO 配置规则详解

每周技术抢先看,总有你想要的! 移动开发 [翻译]为你的 Android 应用增加本地搜索功能 前端开发 [软件]AngularJS 的剪贴板扩展 ngClip [软件]国际化和本地化 JavaScript 库 Globalize [资讯]为网站开发准备的 30 个惊艳的 jQuery 插件 服务端开发/管理 [翻译]一年之后重新审视 Docker -- 根本性缺陷和炒作 [翻译]单线程 1KB 的 Redis 写操作有 84% 都是耗费在内核上 [翻译]使用 HAProxy 基于 HTTP 头