首页 > 编程语言 >【干货】VS Code中配置C/C++运行环境

【干货】VS Code中配置C/C++运行环境

时间:2024-01-23 18:12:14浏览次数:33  
标签:插件 Code CMake 编译器 C++ WIN32 json VS

1、安装MinGW-w64

有个很重要的工具:MinGW-w64,里面包含了在windows上编译调试C++代码所需要的所有环境(以及一些其他的小工具包,例如linux风格的命令ls,将这个包解压缩后的路径添加到系统环境变量PATH中就可以用了)。

他的具体的发布和下载位置:Releases · skeeto/w64devkit (github.com)

 

2、安装CMake

官网地址:CMake - Upgrade Your Software Build System

它的作用时是生成makefile(在windows下更是能生成解决方案.sln文件),所以这也是它跨平台的一个优点。

 

3、VS Code中的相关设置

3.1 安装相关插件

对于C/C++,安装必须的这三个插件,其中CMake用于构建makefile:

 

3.2 设置CMake使用的编译器

Ctrl+Shift+P打开快捷命令,搜索cmake: select a kit:

随后可以看到之前安装的编译器:

 

3.3 C++格式自动调整

按住ctrl+,快捷键,搜索“format”打开以下界面,勾选Format On Save可以设置文件保存时按照指定风格进行格式调整:

具体的C++编程风格可以选择如下:

3.4 .vscode中的配置文件

主要是以下四个:c_cpp_properties.json用于设置语法检查时检索的文件,C/C++的标准等;launch.json用于调试时设置;tasks.json用于编译生成时的设置。

3.4.1 task.json和launch.json的区别

tasks.json 是在 vscode 中辅助程序编译的模块;launch.json是用于运行 ( run ) 和调试 ( debug ) 的配置文件,可以指定语言环境,指定调试类型等等内容。

3.4.2 c_cpp_properties.json

这个文件用于源代码的语法高亮等,比如有预处理器预定义宏,像WIN32这样的,可以在里面写一下,从而VSCode编辑器能识别出来并对相关代码进行语法高亮或者灰色显示(比如条件编译下在Linux环境中才会进行编译的代码段)。

(对于这里的WIN32或者_WIN32,其实是区分Windows的一个宏定义,是编译器根据不同系统有不同的定义,详见:linux/windows下获取gcc(mingw)编译器预定义宏的方式

这个配置文件是用来配置C/C++这个插件的,具体唤出json配置页面可以在安装插件后点击右下角的WIN32标识(默认产生这个配置名称):

 

3.5 VS Code中使用cmake

使用CMakeLists.txt构建C++项目:VSCode:使用CMakeLists.txt构建C++项目_vscode cmakelist-CSDN博客

 

标签:插件,Code,CMake,编译器,C++,WIN32,json,VS
From: https://www.cnblogs.com/freecheng/p/17882276.html

相关文章

  • 详解avcodec_encode_video2 AVERROR(EAGAIN)
    详解avcodec_encode_video2AVERROR(EAGAIN)在视频编码过程中,可能会遇到错误码AVERROR(EAGAIN)。本篇技术博客将详细解释avcodec_encode_video2函数中的AVERROR(EAGAIN)错误码的含义,并讨论可能的原因和解决方案。什么是avcodec_encode_video2?avcodec_encode_video2是FFmpeg(一个流行......
  • Leetcode刷题第二天-贪心
    655:非递减数列链接:665.非递减数列-力扣(LeetCode)直接找最大最小值进行替换不行,[1,5,4,6,7,8,9]最大最小值所处位置可能是非递减数列如果nums[i]>nums[i+1],当前这俩个数递减,修改谁,记录前一个数,比较前一个数和当前数的大小,前一个数大,小变大,后一个数大,大变小统计次数,出现两次......
  • 在无公网IP环境下实现VS Code远程开发的方法
    哈喽大家好,我是咕噜美乐蒂,很高兴又见面啦!随着云计算和远程协作的普及,越来越多的开发者选择使用VSCode进行远程开发。然而,有时我们会发现自己处于一个没有公网IP的网络环境,这可能会导致无法直接访问VSCode的远程开发功能。在本文中,我们将探讨一些解决方案,帮助开发者在这种情况下仍......
  • 低版本vsphere部署高版本导出的OVF 报“硬件系列vmx-13不受支持“解决办法
    低版本vsphere部署高版本导出的OVF报“硬件系列vmx-13不受支持“解决办法在vmwarevSphereclient中,选择文件->部署OVF模板,选择指定的OVA文件,按步骤进行,则会出现这样的错误:此OVF软件包使用了不受支持的功能。OVF软件包需要不支持的硬件。详细信息:行26:硬件系列“vmx-13”不受支......
  • C++U5-第04课-广度优先搜索1
    学习目标广度优先搜索简称广搜搜,英文缩写(BFS)顾名思义就是按照广度顺序优先进行枚举,其本质也是一种暴力枚举的思想。 广度优先搜索(Breadth-FirstSearch,简称BFS)是一种图搜索算法,用于遍历或搜索图数据结构的所有节点。该算法从起始节点开始,逐层地向外扩展,先访问当前节点的所有......
  • C++U5-第03课-深度优先搜索3-连通块类型
    学习目标 本节课主要学习一种类型的深度优先搜索-连通块  [数水坑]  【思路分析】相连的水坑可以被认为是一个水坑,求水坑的个数,就是求连通块的个数。可以采用搜索来访问每个点。每访问到一个W表示至少有一个水坑,通过搜索8个方向,得到这个点连通的所有的......
  • C++U5-第02课-深度优先搜索2
    学习目标  迷宫地图类的深搜 对于二维数组中一个点的行和列x,y;与周围8个方向位置的关系[迷宫的相邻点] 遍历(x,y)的周围的四个方向,判断是否越界,无越界输出。【参考代码】#include<iostream>usingnamespacestd;intn,m,x,y;intdir[4][2]={0,1......
  • vscode的配置文件
    vscode的配置文件总述:vscode中一般会在项目文件夹下自动生成.vscode文件夹,其中存放若干配置文件(.json),一般有如下文件:下面将解释每个文件的用途与表现。1.c_cpp_propertries.json这个文件是使用vscode进行C++开发时会产生的文件,非C++用户可以直接跳过。其内容大致如下:{......
  • [Backup system] Symantec Veritas Backup Exec(BESR) VS Veeam Backup
    SymantecVeritasBackupExecBESR是一款备份和恢复软件,它提供了多个功能特性,用于保护和恢复数据。主要功能特性:备份和恢复多种数据类型:BackupExec可以备份和恢复各种数据类型,包括文件、文件夹、数据库、应用程序数据、虚拟机和物理服务器等。它支持主流操作系统和应用程序,如Windo......
  • UE C++一些记录
    #include<windows/WindowsWindow.h>#include"Windows/AllowWindowsPlatformTypes.h"#include<windows.h>#include<shellapi.h>#include"Windows/HideWindowsPlatformTypes.h"UUETuioBPLibrary::UUETuioBPLibrary(constFO......