windows下如何配置vs code的编译环境

在 Windows 上配置 VS Code 的编译环境涉及安装编译器、配置 VS Code 以及编写和运行代码。以下是具体的步骤:

步骤 1:安装必要的软件

  1. 安装 Visual Studio Code

    • 访问 VS Code 的官方网站并下载安装包。
    • 按照安装向导进行安装。
  2. 安装 C/C++ 编译器

    • 访问 MinGW-w64 网站并下载最新的安装包。
    • 安装 MinGW-w64,并确保选择 mingw32-basemingw32-gcc-g++ 包。
  3. 配置系统环境变量

    • 打开系统属性 -> 高级系统设置 -> 环境变量。
    • 在系统变量中找到 Path,然后编辑,将 MinGW-w64 的 bin 目录路径添加到 Path 中。例如:C:\Program Files\mingw-w64\...\mingw64\bin

步骤 2:配置 VS Code

  1. 安装 C/C++ 扩展

    • 打开 VS Code。
    • 通过左侧的扩展视图(或按 Ctrl+Shift+X),搜索并安装 C/C++ 扩展(Microsoft 开发的)。
  2. 创建配置文件

    • 打开或创建一个新的 C/C++ 项目文件夹。
    • 在项目文件夹下创建一个 .vscode 文件夹。
    • .vscode 文件夹内创建以下文件:
      • c_cpp_properties.json:配置 IntelliSense。
      • tasks.json:配置构建任务。
      • launch.json:配置调试设置。

c_cpp_properties.json 示例

{"configurations": [{"name": "Win32","includePath": ["${workspaceFolder}/**"],"defines": ["_DEBUG","UNICODE","_UNICODE"],"windowsSdkVersion": "10.0.19041.0","compilerPath": "C:/Program Files/mingw-w64/.../mingw64/bin/gcc.exe","cStandard": "c11","cppStandard": "c++17","intelliSenseMode": "windows-gcc-x64"}],"version": 4
}

tasks.json 示例

{"version": "2.0.0","tasks": [{"label": "build","type": "shell","command": "g++","args": ["-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}.exe"],"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"],"detail": "Generated task by IntelliSense."}]
}

launch.json 示例

{"version": "0.2.0","configurations": [{"name": "g++ - 生成和调试活动文件","type": "cppdbg","request": "launch","program": "${fileDirname}/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "C:/Program Files/mingw-w64/.../mingw64/bin/gdb.exe","setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "build","internalConsoleOptions": "neverOpen"}]
}

步骤 3:编写和运行代码

  1. 创建 C/C++ 文件
    • 在项目文件夹中创建一个新的 .cpp 文件,例如 main.cpp
    • 编写一些简单的 C++ 代码,例如
      #include <iostream>int main() {std::cout << "Hello, World!" << std::endl;return 0;
      }
      

    • 编译和运行代码
      • Ctrl+Shift+B 编译代码。这将使用 tasks.json 中定义的任务。
      • F5 运行和调试代码。这将使用 launch.json 中定义的配置。
    • 完整的设置流程

    • 安装 VS Code 和 MinGW-w64。
    • 配置系统环境变量。
    • 在 VS Code 中安装 C/C++ 扩展。
    • 配置 .vscode 文件夹中的 c_cpp_properties.jsontasks.jsonlaunch.json
    • 编写并运行 C++ 代码。

这样,你就成功地在 Windows 上配置了 VS Code 的编译环境,并可以开始进行 C/C++ 开发了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/35785.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

盲源信道分离—FastICA算法性能仿真

本案例中使用Matlab软件对FastICA算法的声音分离性能进行了仿真&#xff0c;分别对简单波形的混合信号、不同类型声音的混合信号、同一类型的混合信号这三种情况进行仿真&#xff0c;主要从分离信号的波形形状、串音误差两方面对分离性能进行衡量&#xff0c;仿真结果显示快速I…

Gradle学习-3 Gradle构建的生命周期

Gradle常用文件目录 Gradle 构建的生命周期&#xff0c;有3个阶段: 初始化阶段配置阶段执行阶段 1、初始化阶段 Gradle 支持构建单个工程个多个子工程&#xff0c;初始化阶段主要负责收集所有参与本次构建的子工程&#xff0c;创建一个项目的层次结构&#xff0c;并未每个…

SpringBoot优点达项目实战:获取系统配置接口(三)

SpringBoot优点达项目实战&#xff1a;获取系统配置接口&#xff08;二&#xff09; 文章目录 SpringBoot优点达项目实战&#xff1a;获取系统配置接口&#xff08;二&#xff09;1、查看接口2、查看数据库3、代码实现1、创建实体类SysConfig2、创建返回数据的vo3、创建control…

【INTEL(ALTERA)】Eclipse Nios II SBT 无法从模板创建新应用程序和 BSP

目录 说明 解决方法 说明 您应该能够创建新的应用程序和 BSP 模板包含以下步骤&#xff1a; 选择 Nios II应用程序和 BSP 来自模板。选择您的.sopcinfo 文件并选择模板。从您的工作区单击 选择现有的 BSP 项目。单击 创建。选择所需的 BSP 选项。单击 完成。 但是&#xf…

API 安全策略和基础指南

API 是当今数字创新计划的核心&#xff0c;已成为应用程序的头号攻击载体。了解什么是 API 安全、为什么它如此重要&#xff0c;以及如何保护您的 API 免受现代威胁至关重要。 什么是 API 安全&#xff1f; 应用程序编程接口&#xff08;API&#xff09;是现代应用程序的基石…

PostgreSQL教程:开启您的数据库之旅

PostgreSQL教程&#xff1a;开启您的数据库之旅 PostgreSQL是一种开源的对象关系型数据库管理系统&#xff08;ORDBMS&#xff09;&#xff0c;它以其强大的功能、稳定性和高度的可扩展性而闻名。作为一个功能丰富的数据库系统&#xff0c;PostgreSQL支持复杂的查询、强大的事…

Python 面试题解析

Python 面试题解析 Python 作为一种广泛使用的编程语言&#xff0c;其面试题目通常覆盖了语言基础、数据结构、算法、设计模式、Web 开发、测试、数据库、系统设计等多个方面。以下是一些常见的 Python 面试题及其解析&#xff0c;使用 Markdown 格式编写。 1. Python 基础 …

Linux-笔记 OverlayFS文件系统小应用

前言 通过另一章节 OverlayFS文件系统入门 中已经大致了解了原理&#xff0c;这里来实现一个小应用。

大模型性能优化KV Cache

原理 KV Cache的本质就是避免重复计算&#xff0c;把需要重复计算的结果进行缓存&#xff0c;生成式模型的新的token的产生需要用到之前的所有token的 K , V K,V K,V&#xff0c;在计算注意力的时候是当前的 Q Q Q和所有的 K , V K,V K,V来进行计算&#xff0c;所以是缓存 K ,…

打破数据分析壁垒:SPSS复习必备(九)

有序定性资料统计推断 1.分类 单向有序行列表 双向有序属性相同行列表 双向有序属性不同行列表 2.单向有序行列表 秩和检验 ① 两组单向有序分类资料 ②多组单向有序定性资料 步骤&#xff1a; 1.建立检验假设和确定检验水准 2.编秩 3.求秩和 4.确定检验统计量 5…

按位与、或、异或操作符

目录 & --- 按位与操作符 按位与操作符运用规则 按位与操作符相关代码 按位与操作符相关代码验证 | --- 按位或操作符 按位或操作符运用规则 按位或操作符相关代码 按位或操作符相关代码验证 ^ --- 按位异或操作符 按位异或操作符运用规则 按位异或操作符相关代…

分页组件 vue/uniapp

失效如上图 1.父组件调用 <onion-pagination :page.sync="todusGameQuery.pageSize" @update:page="changeTodusLoadMore":pageSize="todusGameQuery.pageNum" :total="todusGameTotal"></onion-pagination> 2.组件封装…

海纳斯 hinas 的hi3798mv100 华为悦盒 6108v9 安装wifi模块

hi3798mv100安装wifi模块 1.执行脚本 &#xff0c;执行完毕后重启服务器2. 继续执行脚本3.检查网卡驱动安装是否正确4.查看网卡安装状态5.连接wifi结尾 1.执行脚本 &#xff0c;执行完毕后重启服务器 bash <(curl -sSL https://gitee.com/xjxjin/scripts/raw/main/install_…

【开源项目】自然语言处理领域的明星项目推荐:Hugging Face Transformers

在当今人工智能与大数据飞速发展的时代&#xff0c;自然语言处理&#xff08;NLP&#xff09;已成为推动科技进步的重要力量。而在NLP领域&#xff0c;Hugging Face Transformers无疑是一个备受瞩目的开源项目。本文将从项目介绍、代码解释以及技术特点等角度&#xff0c;为您深…

Leetcode Hot100之矩阵

1. 矩阵置零 题目描述 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 解题思路 题目要求进行原地更改&#xff0c;也就是不能使用额外的空间&#xff0c;因此我们可以使用第一行的元素来记录对应的…

Java SpringBoot 打包后 获取文件 打包后找不到文件 解决方法

在SpringBoot下 本地运行获取项目下的文件是没问题的&#xff0c;在打包后获取则找不到文件 原因&#xff1a; 在Spring Boot项目中&#xff0c;当尝试访问项目下的文件时&#xff0c;本地开发环境和打包后的运行环境可能会有所不同。在本地开发时&#xff0c;通常可以直接通过…

Python自动造波器椭圆曲线波孤子解

&#x1f3af;要点 &#x1f3af;快速傅立叶变换算法周期域解椭圆曲线波 | &#x1f3af;算法数值解孤波脉冲和结果动画 | &#x1f3af;三种语言孤子解浅水表面波方程 | &#x1f3af;渐近分解算法孤子波 | &#x1f3af;自适应步长算法孤子波 | &#x1f3af;流体自动造波器…

基于STM32的智能家庭安防系统

目录 引言环境准备智能家庭安防系统基础代码实现&#xff1a;实现智能家庭安防系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统实现4.4 用户界面与数据可视化应用场景&#xff1a;家庭安防管理与优化问题解决方案与优化收尾与总结 1. 引言 智能家庭安防系统通过使用ST…

终端基本指令使用不了

当你修改了~/.zshrc文件后发现像ls、vim这样的基本命令无法使用&#xff0c;这通常意味着你的PATH环境变量可能被错误地修改或覆盖了&#xff0c;导致shell无法找到这些命令的可执行文件。以下是几个可能的原因和解决方法&#xff1a; PATH变量被错误修改&#xff1a; 确认你没…

利用flex来布局顶部菜单栏

安装vscode插件 css peek&#xff1a;快速定位到css定义的位置 微软的live preview 替换live server 因为这个好像不支持utf8 前置css知识 span标签是一个行内容器&#xff0c;用于标记文本的一部分&#xff0c;或文档的一部分。它与 div 非常相似&#xff0c;但 div 是块级…