当前位置: 首页 > news >正文

在vscode中配置C/C++环境GCC on Linux

https://code.visualstudio.com/docs/cpp/config-linux

官方文档

准备工作
为了能够在vs code中编译运行C/C++程序,需要下载:

Visual Studio Code

C++扩展插件,cuda,,,
对于该扩展插件,打开vs code,利用快捷键(Ctrl+Shift+X)打开插件搜索面板,输入C++,找到下面这个紫白色的,点击Install下载。
 

GCC(g++ 编译器和GDB调试器)
首先检查一下是否已经安装过GCC了,打开终端,输入以下命令查看GCC的版本:

gcc -v
如果提示找不到gcc这个命令没安装的话,就输入以下包更新命令,先更新下系统包列表,防止下载时出现接口方面,可能是版本兼容之类的错误。

sudo apt-get update
sudo apt-get install build-essential gdb
 

新建helloworld.cpp,然后任意写一些C++源代码

#include <iostream>
#include <vector>
#include <string>using namespace std;int main()
{vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};for (const string& word : msg){cout << word << " ";}cout << endl;
}

源文件生成可执行文件(Build)
接下来我们会需要一个叫tasks.json的文件,它是用来告诉VS Code如何使用g++来编译,或者说build出可执行文件。

这里有一个注意的点就是要保持源文件helloworld.cpp打开着,这叫active file。

通过选择“Terminal > Configure Default Build Task",然后会出现选项,这里需要选择“Choose C/C++: g++ build active file”。
找到command行对应

调试(Debug)
如果想要调试文件的话我们需要launch.json文件,它能在我们按F5时告诉VS Code利用GDB debugger去调试程序。

通过主菜单,选择“Run > Add Configuration…”,然后选择“C++ (GDB/LLDB)”

然后会出现下拉框我们需要选择“g++ build and debug active file”:

.vscode目录下生成launch.json文件并打开该文件,类似的各参数的意义和功能都可以自行了解。

生成完了之后回到helloworld.cpp,通过按F5或者从菜单选择“Run > Start Debugging”开始对程序进行调试了,顶部会出现调试按钮。

相关文章:

在vscode中配置C/C++环境GCC on Linux

https://code.visualstudio.com/docs/cpp/config-linux 官方文档 准备工作 为了能够在vs code中编译运行C/C程序&#xff0c;需要下载&#xff1a; Visual Studio Code C扩展插件&#xff0c;cuda&#xff0c;&#xff0c;&#xff0c; 对于该扩展插件&#xff0c;打开vs c…...

windows执行完LoadLibrary()后,可以删除源动态库文件,函数不会锁库文件

windows执行完LoadLibrary()后&#xff0c;可以删除源动态库文件&#xff0c;函数不会锁库文件。 #include <iostream> #include <Windows.h>int main() {char path[MAX_PATH]{};GetCurrentDirectoryA(sizeof(path), path);HMODULE lib LoadLibraryA("testd…...

ios 知识

IOS 类文件.h和.m中interface的区别 大家都知道我们在创建类文件时会发现&#xff1a; #import <UIKit/UIKit.h>interface ViewController : UIViewControllerend和 #import "ViewController.h"interface ViewController ()end那么他们之间有何区别呢&#x…...

8 | 美国航班数据分析

"在现代快节奏的生活中,航空旅行已经成为人们出行的重要方式之一。然而,航班的准时性一直以来都是旅客和航空公司关注的焦点。无论是商务出差还是休闲度假,乘客们都希望能够在既定的时间内安全、准时地到达目的地。而对于航空公司而言,准点运营不仅关乎乘客体验,还涉…...

app.use(express.json()) 使用

Express内置的中间件 自 Express 4.16.0 版本开始&#xff0c;Express 内置了 3 个常用的中间件&#xff0c;极大的提高了 Express 项目的开发效率和体验 express.static 快速托管静态资源的内置中间件&#xff0c;例如&#xff1a; HTML 文件、图片、CSS 样式等&#xff08;无…...

基于PyTorch的图像识别

前言 图像识别是计算机视觉领域的一个重要方向&#xff0c;具有广泛的应用场景&#xff0c;如医学影像诊断、智能驾驶、安防监控等。在本项目中&#xff0c;我们将使用PyTorch来开发一个基于卷积神经网络的图像识别模型&#xff0c;用来识别图像中的物体。下面是要识别的四种物…...

js合并数组对象(将数组中具有相同属性对象合并到一起,组成一个新的数组)

一、根据数组对象中某一key值&#xff0c;合并相同key值的字段&#xff0c;到同一个数组对象中&#xff0c;组成新的数组 1.原数组&#xff1a; var array [{ id: 1, name: Alice },{ id: 2, name: Bob },{ id: 1, age: 25 },{ id: 3, name: Charlie, age: 30 } ];2.合并后数…...

Spring BeanPostProcessor 接口的作用和使用

BeanPostProcessor 接口是 Spring 框架中的一个扩展接口&#xff0c;用于在 Spring 容器实例化、配置和初始化 bean 的过程中提供自定义的扩展点。通过实现这个接口&#xff0c;您可以在 bean 实例创建的不同生命周期阶段插入自己的逻辑&#xff0c;从而实现对 bean 行为的定制…...

Android 13 Hotseat定制化修改——006 hotseat图标禁止移动到Launcher中

目录 一.背景 二.方案 三.具体实践 一.背景 客户定制需要修改让hotseat中的icon不要移动到Launcher中,所以需要进行定制 二.方案 原生的Hotseat与Launcher是可以相互移动的,然后现在的需求是Hotseat中的图标只能在Hotseat中移动,所以需要做下限制 思路:在事件拦截的地…...

RabbitMQ 发布确认机制

发布确认模式是避免消息由生产者到RabbitMQ消息丢失的一种手段 发布确认模式 原理说明实现方式开启confirm&#xff08;确认&#xff09;模式阻塞确认异步确认 总结 原理说明 生产者通过调用channel.confirmSelect方法将信道设置为confirm模式&#xff0c;之后RabbitMQ会返回Co…...

微信小程序使用rich-text解析富文本字符串的时候,遇到image标签图片很大超过屏幕

场景&#xff1a; 使用uniapp开发微信小程序&#xff0c;解析富文本文章需求 用到的组件&#xff1a; u-view2.0的u-parse uniapp提供的rich-text 以上两种组件都是解析富文本的作用&#xff0c;一般用于富文本解析场景&#xff0c;比如解析文章内容&#xff0c;商品详情&am…...

使用IIS服务器部署Flask python Web项目

参考文章 ""D:\Program Files (x86)\Python310\python310.exe"|"D:\Program Files (x86)\Python310\lib\site-packages\wfastcgi.py"" can now be used as a FastCGI script processor参考文章 请求路径填写*&#xff0c;模块选择FastCgiModule&…...

sentinel核心流程源码解析

sentinel的处理槽(ProcessorSlot) 可以说&#xff0c;sentinel实现的各种功能就是由各处理槽完成的 ,ProcessorSlot定义了四个方法&#xff1a; 当进入该处理槽时触发该方法 处理完 entry方法之后触发该方法 退出该处理槽时触发该方法 exit方法处理完成时触发该方法 sentinel的…...

中睿天下Coremail | 2023年第二季度企业邮箱安全态势观察

今日&#xff0c;中睿天下联合Coremail邮件安全发布《2023第二季度企业邮箱安全性研究报告》&#xff0c;对2023第二季度和2023上半年的企业邮箱的安全风险进行了分析。 一 垃圾邮件同比下降16.38% 根据监测&#xff0c;2023年Q2垃圾邮件数量达到6.47亿封&#xff0c;环比下降…...

桶排序-1184:明明的随机数

【题目描述】 明明想在学校中请一些同学一起做一项问卷调查&#xff0c;为了实验的客观性&#xff0c;他先用计算机生成了N个1到1000之间的随机整数&#xff08;N≤100&#xff09;&#xff0c;对于其中重复的数字&#xff0c;只保留一个&#xff0c;把其余相同的数去掉&#x…...

Spring Boot中整合Keycloak OpenID Connect(OIDC)

在Spring Boot中整合Keycloak OpenID Connect&#xff08;OIDC&#xff09;是一个常见的任务&#xff0c;用于实现身份验证和授权。Keycloak是一个开源的身份和访问管理解决方案&#xff0c;而OpenID Connect是构建在OAuth 2.0之上的认证和授权协议。下面是一个简单的步骤指南&…...

如何使用Mac终端给树莓派pico构建C/C++程序进行开发,以及遇到各种问题该怎么处理,不使用任何IDE或编辑器(例如VS Code)

写本文的原因是官方的教程已经过时了&#xff0c;如果你现在按照官方教程来在 Mac 上进行配置&#xff0c;那么会遇到一堆问题&#xff0c;比如我几乎把能踩的“雷”都踩了。所以这里记录了完整过程&#xff0c;以及各种错误的原因和处理方法&#xff0c;不然以后换 Mac 了或者…...

linux 关机和重启

关机和重启 关机和重启之前最好先数据数据同步一下 # 将数据由内存同步到硬盘sync 关机 #shutdown [选项] 时间#立即进入维护模式shutdown now#立即重启shutdown -r now#20:00 重新启动计算机shutdown -r 20:00& #立即关机shutdown -h now# 20:00 关闭计算机shutdown -h 20…...

Python(八十三)字符串的比较操作

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…...

Java面试

Java面试宝典是一本面向Java开发者的面试准备指南&#xff0c;旨在帮助准备参加Java相关职位面试的人们更好地准备和应对面试。以下是一些可能在Java面试中涉及的主题和问题&#xff0c;供您参考&#xff1a; Java基础知识&#xff1a; 什么是Java虚拟机&#xff08;JVM&#x…...

造相-Z-Image-Turbo 亚洲美女LoRA一键部署教程:基于Ubuntu20.04的快速环境搭建

造相-Z-Image-Turbo 亚洲美女LoRA一键部署教程&#xff1a;基于Ubuntu20.04的快速环境搭建 想试试最近挺火的造相-Z-Image-Turbo模型&#xff0c;再搭配上那个效果很不错的亚洲美女LoRA&#xff0c;生成点好看的图片吗&#xff1f;但一想到要自己配环境、装依赖、搞配置&#…...

5个实用场景揭秘:猫抓浏览器扩展如何成为你的网页资源管理专家

5个实用场景揭秘&#xff1a;猫抓浏览器扩展如何成为你的网页资源管理专家 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾经在浏览网页时…...

从卡尺到三坐标:不同测量场景下的GRR实战避坑指南(附Excel模板)

从卡尺到三坐标&#xff1a;不同测量场景下的GRR实战避坑指南&#xff08;附Excel模板&#xff09; 在精密制造的世界里&#xff0c;测量误差可能比生产缺陷更致命。想象一下&#xff1a;当三坐标测量机&#xff08;CMM&#xff09;的报告显示某个关键尺寸超差时&#xff0c;究…...

终极指南:3分钟学会Charticulator免费图表设计工具

终极指南&#xff1a;3分钟学会Charticulator免费图表设计工具 【免费下载链接】charticulator Interactive Layout-Aware Construction of Bespoke Charts 项目地址: https://gitcode.com/gh_mirrors/ch/charticulator 想要快速创建专业级数据可视化图表却不会编程&…...

2026年终极B站资源下载方案:BiliTools跨平台工具箱完整指南

2026年终极B站资源下载方案&#xff1a;BiliTools跨平台工具箱完整指南 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …...

HUNYUAN-MT在网络安全领域的应用:多语言威胁情报翻译与分析

HUNYUAN-MT在网络安全领域的应用&#xff1a;多语言威胁情报翻译与分析 每天&#xff0c;全球的安全运营中心里&#xff0c;分析师们都要面对海量的信息。一份来自东欧的漏洞报告&#xff0c;几段在暗网论坛上流传的攻击讨论&#xff0c;或者一篇用日语写的技术分析文章。这些…...

Trae中Qwen3-Coder-Plus模型实战:提升代码可测试性的智能重构策略

1. 认识Qwen3-Coder-Plus与代码可测试性 第一次接触Qwen3-Coder-Plus时&#xff0c;我正为一个Java服务类缺乏单元测试而头疼。这个阿里开源的代码大模型&#xff0c;能在Trae环境中直接对现有代码进行智能重构。最让我惊讶的是&#xff0c;它不仅能生成符合规范的代码&#xf…...

GIMP Resynthesizer终极指南:5步掌握智能纹理合成与图像修复

GIMP Resynthesizer终极指南&#xff1a;5步掌握智能纹理合成与图像修复 【免费下载链接】resynthesizer Suite of gimp plugins for texture synthesis 项目地址: https://gitcode.com/gh_mirrors/re/resynthesizer GIMP Resynthesizer是一套功能强大的GIMP纹理合成插件…...

复古RPG UI设计赋能AI工具:Pixel Fashion Atelier降低创作者认知负荷的实践

复古RPG UI设计赋能AI工具&#xff1a;Pixel Fashion Atelier降低创作者认知负荷的实践 1. 项目背景与设计理念 在AI图像生成工具日益普及的今天&#xff0c;大多数产品界面仍停留在技术导向的"参数调节"模式。Pixel Fashion Atelier&#xff08;像素时装锻造坊&am…...

从零开始:MySQL安装与IDEA数据库连接实战指南

1. MySQL安装全流程详解 第一次接触MySQL的开发者往往会被复杂的安装过程劝退&#xff0c;但其实只要跟着步骤一步步来&#xff0c;半小时内就能搞定。我经历过无数次安装失败后总结出这套"保姆级"教程&#xff0c;帮你避开所有坑点。 1.1 下载MySQL的正确姿势 打开M…...