macOS上使用VScode编译配置C++语言开发环境

本文介绍macOS上使用VScode编译配置C++语言开发环境

1.准备工作

安装C/C++插件

在这里插入图片描述

2.配置c_cpp_properties.json文件

[⇧⌘P]打开命令模式,选择[C/Cpp: Edit Configurations(JSON)]命令,回车后会自动生成一个.vscode目录,目录下有一个c_cpp_properties.json文件,如下所示:

{"configurations": [{"name": "Mac","defines": [],"macFrameworkPath": ["/System/Library/Frameworks","/Library/Frameworks","${workspaceFolder}/**"],"compilerPath": "/usr/bin/g++","cStandard": "c11","cppStandard": "c++17","intelliSenseMode": "clang-x64","browse": {"path": ["${workspaceFolder}"],"limitSymbolsToIncludedHeaders": true,"databaseFilename": ""}}],"version": 4
}

3.配置tasks.json文件

[⇧⌘P]打开命令模式,选择[Tasks: Configure Task]命令,选择的模板为MSBuild,回车后会自动在.vscode目录下生成一个tasks.json文件:

{// See https://go.microsoft.com/fwlink/?LinkId=733558// for the documentation about the tasks.json format"version": "2.0.0","tasks": [{"label": "build c++","type": "shell","command": "g++","args": ["${file}","-std=c++17","-g","-Wall","-lm","-o","${fileDirname}/${fileBasenameNoExtension}.out"],"group": "build","presentation": {"reveal": "silent","panel": "shared","echo": true,"focus": false,"showReuseMessage": true,"clear": false},"problemMatcher": "$gcc"},{"label": "run c++","type": "shell","dependsOn": "build c++","command": "${fileDirname}/${fileBasenameNoExtension}.out","presentation": {"focus": true},"group": "test"}]
}

4.配置launch.json文件

方式1:

在这里插入图片描述

方式2:

[⇧⌘P]打开命令模式,选择[Debug: Open launch.json]命令,选择的模板为C/C++,回车后会自动在.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": "(lldb) Launch","type": "cppdbg","request": "launch","program": "enter program name, for example ${workspaceFolder}/a.out","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": false,"MIMode": "lldb"}]
}

完成这三步C++开发环境就配置好了,接下来就可以编译,运行,调试C++程序了。

[⇧⌘B]是编译程序,[⇧⌘R]是运行程序。

如果安装了插件『Code Runner』可以更快捷地直接运行程序,安装看下一步。

5.安装「Code Runner」插件

在这里插入图片描述

安装完插件,[⇧⌘P]打开命令模式选择「run code」运行项目,这个时候你可以直接在cpp代码区右键-> 「run code」,就可以直接输出结果,而不需要[⇧⌘B]编译程序和[⇧⌘R]运行程序了。

如果需要调试,那就按F5,进入调试模式即可。

6.写在最后

如果你看完上面的安装过程,你还没有成功配置C++环境,或者你搞不清楚这些具体的关系,你只需要保证你的工作区间(你存放cpp文件或项目的文件夹)有一个隐藏文件夹叫.vscode,而这个文件夹中又有三个配置好的文件即可。

在这里插入图片描述

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

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

相关文章

数学在现代经济学研究中的作用

数学在现代经济学研究中的作用 The Role of Mathematics in Modern Economic Research 经济学,作为一门研究人类如何在资源有限的情况下做出选择的社会科学,历来都与数学有着紧密的联系。随着科技的发展,特别是在信息时代数据量的爆炸性增长&…

【漏洞复现】H3C 路由器多系列信息泄露漏洞

Nx01 产品简介 H3C路由器是一款高性能的路由器产品,具有稳定的性能和丰富的功能。它采用了先进的路由技术和安全机制,可以满足不同用户的需求,广泛应用于企业、运营商和数据中心等领域。 Nx02 漏洞描述 H3C路由器多系列存在信息泄露漏洞&…

林浩然与杨凌芸的Java奇遇记:Map世界的恋爱攻略

林浩然与杨凌芸的Java奇遇记:Map世界的恋爱攻略 The Java Adventure of Lin Haoran and Yang Lingyun: Love Strategy in the Map World 在一个充满代码香气的世界里,男主角林浩然,一个热衷于Java编程的程序员大侠,以其深厚的内功…

K8s进阶之路-核心概念/架构:

架构:Master/Node Master组件--主控节点{ 负责集群管理(接收用户事件转化成任务分散到node节点上)} Apiserver: 资源操作的唯一入口,提供认证、授权、API注册和发现等机制 Scheduler : 负责集群资源调度&am…

【CentOS】Linux 文件与目录管理

目录 1、目录的切换、新增和删除 (1)cd (change directory,切换目录) (2)pwd (显示目前所在的目录) (3)mkdir (make directory,建立新目录 ) (4)rmdir (…

基于SSM的疫情期间学生信息管理平台的设计与实现(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的疫情期间学生信息管理平台的设计与实现(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

CSS 实现 3D 书本展开动效

一、前言 本文将使用纯 CSS 实现一个简单的 3D 书本展开动效。 二、实现思路 实现这么一个书本动效 乍一看可能会感觉有些复杂,实际上并不难,遇到这种组合动效的需求时,我们只要将整体拆分成多个小步骤去做,就很简单了。 1. 拆…

RabbitMQ的安装与使用

RabbitMQ的安装与使用 介绍一、RabbitMQ的安装1 查找镜像2 拉取镜像3 查看镜像4 创建容器5 查看容器6 访问测试 二、RabbitMQ的使用1 创建项目2 配置文件3 队列配置文件4 消费者5 生产者6 测试 三、交换器四、普通队列Demo五、死信队列Demo1 介绍2 示例2.1 配置2.2 生产者2.3 消…

10_Java泛型

一、为什么要有泛型 1.泛型的设计背景 集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,所以在JDK1.5之前只能把元素类型设计为Object,JDK1.5之后使用泛型来解决。因为这个时候除了元素的类型不确定,其他的部分…

Qt C++春晚刘谦魔术约瑟夫环问题的模拟程序

什么是约瑟夫环问题? 约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N6,M5,被杀掉的顺序是:5&#xff…

14. UE5 RPG使用曲线表格设置回复血量值

之前的文章中,我使用的都是固定的数值来设置血量回复或者蓝量回复,在这篇文章里面,介绍一下使用曲线表格。通过曲线表格我们可以设置多个数值,然后通过去通过修改索引对应的数值去修改回复的血量或者蓝量。 创建曲线表格 首先创…

林浩然与杨凌芸的Java奇遇记:字节流世界的二进制爱情

林浩然与杨凌芸的Java奇遇记:字节流世界的二进制爱情 The Java Adventure of Lin Haoran and Yang Lingyun: Binary Love in the Byte Stream World 在编程宇宙中,有一对程序员CP——林浩然和杨凌芸,他们共同编织着Java王国里那些神秘而又充满…

MySQL--SQL解析顺序

前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了。 本文将从MySQL总体架构—>查询执行流程—>语句执行顺序来探讨一下其中的知识。 一、MySQL架构总览&a…

Swift Combine 使用从 PassthroughSubject 预定好的发送的事件测试订阅者 从入门到精通二十三

Combine 系列 Swift Combine 从入门到精通一Swift Combine 发布者订阅者操作者 从入门到精通二Swift Combine 管道 从入门到精通三Swift Combine 发布者publisher的生命周期 从入门到精通四Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五Swift Com…

MSS与cwnd的关系,rwnd又是什么?

慢启动算法是指数递增的 这种指数增长的方式是慢启动算法的一个核心特点,它确保了TCP连接在开始传输数据时能够快速地探测网络的带宽容量,而又不至于过于激进导致网络拥塞。具体来说: 初始阶段:当TCP连接刚建立时,拥…

ubuntu屏幕小的解决办法

1. 安装vmware tools , 再点自适应客户机 执行里面的vmware-install.pl这个文件 :sudo ./vmware-install.pl 执行不了可以放到家目录,我放在了/home/book 里面 最后点这个自适应客户机 然后我这里点不了是因为我点了控制台视图和拉伸客户机&#xff0c…

【Java中23种设计模式-单例模式2--懒汉式2线程安全】

加油,新时代打工人! 简单粗暴,学习Java设计模式。 23种设计模式定义介绍 Java中23种设计模式-单例模式 Java中23种设计模式-单例模式2–懒汉式线程不安全 package mode;/*** author wenhao* date 2024/02/19 09:38* description 单例模式…

鸿蒙开发 之 工具安装和环境搭建

DevEco Studio 面向HarmonyOS应用及元服务开发者提供的集成开发环境(IDE), 助力高效开发。 ArkTS 语言 ArkTS是鸿蒙生态的应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束&…

Flask 学习99-Flask-SocketIO 快速入门与使用

前言 flask-socketio 为flask应用提供了一个客户端与服务器之间低延迟的双向通讯 官网地址:https://flask-socketio.readthedocs.io/en/latest/intro.html 环境准备 先安装flask-socketio pip install flask-socketio说明Flask-SocketIO 与 js版本客户端不匹配,二者不能正…

机器学习之梯度下降法直观理解

形象化举例,由上图所示,假如最开始,我们在一座大山上的某处位置,因为到处都是陌生的不知道下山的路,所以只能摸索着根据直觉,走一步算一步。在此过程中,每走到一个位置的时候,都会求…