Sublime Text 3配置C/C++开发环境

Sublime Text 3配置C/C++开发环境

  • 一、引言
  • 二、主要内容
    • 1. 初识 Sublime Text 3
    • 2. 接入 mingw-w64
      • 2.1 下载 mingw-w64
      • 2.2 环境变量配置
    • 3. 配置 C/C++ 开发环境
      • 3.1 C Build System 配置
      • 3.2 C++ Build System 配置
    • 4. 编写 C/C++ 代码
      • 4.1 第一个 C 代码【helloworld.c】
      • 4.2 第一个 C++ 代码[helloworld.cpp]
    • 5. 运行 C/C++ 代码
      • 5.1 运行 C 代码
      • 5.2 运行 C++ 代码
  • 三、总结
  • 四、更新

在这里插入图片描述

一、引言

C/C++ 的开发工具有很多,相信大家多多少少都有所了解,比如 Visual C++CodeblocksVSCodeDev C++ 等等;本篇 Huazie 介绍一个比较轻量级的开发环境 Sublime Text 3,并用它来配置 C/C++ 开发环境。

二、主要内容

1. 初识 Sublime Text 3

Sublime Text 3 是一款流行的文本编辑器,它的特点是体积小巧、启动速度快、界面简洁美观。它具有强大的代码编辑功能,支持多种编程语言。此外,Sublime Text 3 还具有丰富的插件生态系统,用户可以根据自己的需求安装各种插件来扩展其功能。

Sublime Text 3 的一些主要特点,如下所示:

  • 强大的代码编辑功能Sublime Text 3 提供了许多实用的代码编辑功能,如自动完成、代码高亮、代码片段等,大大提高了编程效率。

  • 支持多种编程语言Sublime Text 3 支持多种编程语言,包括 HTML、CSS、JavaScript、Python、Ruby、PHP 等,用户可以根据需要选择不同的语言模式。

  • 插件生态系统Sublime Text 3 拥有丰富的插件生态系统,用户可以通过安装插件来扩展其功能,如 Emmet(用于编写 HTMLCSS)、Package Control(用于安装和管理插件)等。

  • 自定义快捷键Sublime Text 3 允许用户自定义快捷键,以便更快速地执行常用操作。

  • 多窗口编辑Sublime Text 3 支持多窗口编辑,用户可以同时打开多个文件进行编辑,方便进行代码对比和复制粘贴操作。

  • 跨平台支持Sublime Text 3 支持 WindowsMacLinux 操作系统,用户可以在不同的平台上使用相同的设置和插件。

  • 版本控制集成Sublime Text 3 可以与版本控制系统(如 Git)集成,方便用户进行代码版本管理。

2. 接入 mingw-w64

Mingw-w64 是一个用于在 Windows 系统上支持 GCC 编译器的完整运行时环境。这个项目是原始 Mingw.org 项目的进一步发展,旨在支持 64位 和 32位 Windows 操作系统原生的二进制文件。在 2007 年,Mingw-w64 从原始 Mingw.org项目分叉出来,提供对 64位新API 的支持。从那时起,它逐渐得到了广泛的应用和传播。

Mingw-w64 提供了一百万行以上的头文件、库和运行时,用于在 Windows 上链接和运行代码。它包括 Winpthreads 库(用于 C++11 线程支持)和 Winstorecompat库(一个便利库,可简化与 Windows 应用商店的一致性)。与VisualStudio 相比,Mingw-w64 在数学支持方面更为完善,并且执行速度更快。

2.1 下载 mingw-w64

参考这个帖子内容,下载一下 mingw-w64

https://tieba.baidu.com/p/5487544851

我目前用的 MinGW-w64 9.0.0,有需要的可以在评论回复 或者 私信我。

2.2 环境变量配置

不管是安装版的,还是免安装版的,都会有类似如下的目录:

在这里插入图片描述

上图中的 bin 目录,我们点进去看下:

在这里插入图片描述

实际上这里的 gcc.exeg++.exe 就是 C/C++ 程序编译和运行的关键所在,当然这里还有其他的可执行程序,感兴趣的朋友可以自行搜索了解,这里不展开了。

现在,Huaziewindow 11 系统为例,介绍下配置环境变量,如下:

右击 Window 图标,打开下图并选择 系统

在这里插入图片描述

点击 高级系统设置,打开系统属性页面,点击 环境变量

在这里插入图片描述

找到 Path 环境变量,配置上面你的 mingw64bin 目录进去:

在这里插入图片描述

3. 配置 C/C++ 开发环境

打开 Sublime Text 3,我们可以看到如下的界面:

在这里插入图片描述

菜单栏选择 Tools => Build System => New Build System

在这里插入图片描述

3.1 C Build System 配置

{
    "windows": {
        "cmd": ["gcc", "-std=c11", "${file}", "-o", "${file_base_name}.exe"],
    },
    "cmd": ["gcc", "-std=c11", "${file}", "-o", "${file_base_name}"],
    "file_regex": "^(.*)\\(([0-9]+),([0-9]+)\\) (Error|Fatal): (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.c",
	"encoding": "cp936",
    "variants": [
    {
        "name": "Run",
        "shell": true,
        "windows": {
            "shell_cmd" : "start cmd /c \"\"${file_base_name}.exe\" & echo. & pause\""
        }
    },
    {
        "name": "Build and Run",
        "shell": true,
        "windows": {
            "shell_cmd": "gcc -std=c11 \"${file}\" -o \"${file_base_name}.exe\" && start cmd /c \"\"${file_base_name}.exe\" & echo. & pause\""
        },
    }
    ]
}

上述内容保存在,前面打开的 New Build System 中,并命名为 C.sublime-build

在这里插入图片描述

3.2 C++ Build System 配置

{  
    "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}", "-Wall" ,"&&","start","cb_console_runner.exe","${file_path}/${file_base_name}"],  
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",  
    "working_dir": "${file_path}",  
    "selector": "source.c, source.c++",  
    "shell": true,  
    "encoding": "cp936",  
    "variants":  
    [  
        {  
            "name": "Run",  
            "cmd": ["start","cb_console_runner.exe","${file_path}/${file_base_name}"]  
        }  
    ]  
}  

重新 New Build System,将上述内容保存其中,并命名为 CPP.sublime-build

在这里插入图片描述

4. 编写 C/C++ 代码

现在让我们开始编写吧!!!

4.1 第一个 C 代码【helloworld.c】

#include<stdio.h>

int main() 
{
	printf("hello world!\n");
	printf("[C]Author: Huazie");
	return 0;
}

4.2 第一个 C++ 代码[helloworld.cpp]

#include <iostream>
using namespace std;

int main()
{
   cout << "Hello World" << endl;
   cout << "[C++]Author: Huazie";
   return 0;
}

5. 运行 C/C++ 代码

5.1 运行 C 代码

菜单栏 Tools => Build System ,然后 选择 C,就是前面的 C.sublime-build

然后直接 Ctrl + B,编译运行当前的程序,运行截图如下所示:

在这里插入图片描述

5.2 运行 C++ 代码

菜单栏 Tools => Build System ,然后 选择 CPP,就是前面的 CPP.sublime-build

然后直接 Ctrl + B,编译运行当前的程序,运行截图如下所示:

在这里插入图片描述

三、总结

本篇 Huazie 介绍了 Sublime Text 3 配置 C/C++ 的相关内容,感兴趣的朋友赶紧配置起来,有任何问题可以随时评论区沟通。

四、更新

经过上面的配置,大家都能写自己的第一个 C/C++ 代码了,但是有些小伙伴慢慢使用发现,如果输出的内容包含中文,打印出来的信息是乱码的。有关这个问题,请查看笔者的另一篇博文 《Sublime Text 3 解决中文乱码问题》

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

jmeter,跨线程调用cookie

结构目录 一、线程组1 1、创建登录的【HTTP请求】&#xff0c;并配置接口所需参数&#xff1b; 2、创建【正则表达式提取器】&#xff0c;用正则表达式提取cookie字段&#xff1b; 3、创建【调试取样器】&#xff0c;便于观察第2步提取出的数据&#xff1b; 4、创建【BeanSh…

构建外卖小程序:技术代码实践

在这个数字化的时代&#xff0c;外卖小程序已经成为餐饮业的一项重要工具。在本文中&#xff0c;我们将通过一些简单而实用的技术代码&#xff0c;向您展示如何构建一个基本的外卖小程序。我们将使用微信小程序平台作为例子&#xff0c;但这些原理同样适用于其他小程序平台。 …

钉钉机器人发送表格

背景: 由于每次发送excel连接&#xff0c;不太好看&#xff0c;想着简单的表格直接用消息的方式发送在群里&#xff0c;就想着弄一个直接发送的表格信息&#xff0c;但是钉钉官网是没有的。 我估计钉钉的开发人员也没有想过&#xff0c;会有人钻空子&#xff0c;用markdown发送…

从YOLOv1到YOLOv8的YOLO系列最新综述【2023年4月】

作者&#xff1a;Juan R. Terven 、Diana M. Cordova-Esparaza 摘要&#xff1a;YOLO已经成为机器人、无人驾驶汽车和视频监控应用的核心实时物体检测系统。我们对YOLO的演变进行了全面的分析&#xff0c;研究了从最初的YOLO到YOLOv8每次迭代的创新和贡献。我们首先描述了标准…

Mac清理软件cleanmymac x4.14.4破解版,2024年有免费cleanmymac x激活码

​ CleanMyMac X 4.14.4破解版可以快速识别并删除占用磁盘空间的无用文件&#xff0c;提升我们系统的存储空间。它还可以优化启动项、修复系统错误和保护隐私等。总之CleanMyMac X十分强大有需要的赶快下载吧&#xff0c; CleanMyMac X 许可证激活码:ak39840506641bjckr 需要…

Educoder/头歌JAVA——jQuery基础

目录 第1关&#xff1a;jQuery入门 相关知识 环境安装 第一个程序 id选择器 第2关&#xff1a;jQuery基本选择器 相关知识 类选择器 元素选择器 编程要求 第3关&#xff1a;过滤选择器 &#xff08;一&#xff09; 相关知识 设置css属性 编程要求 第4关&#xff1…

LLM之RAG实战(四):Self-RAG如何革命工业LLM

论文地址&#xff1a;https://arxiv.org/pdf/2310.11511.pdf Github地址&#xff1a;https://github.com/AkariAsai/self-rag 尽管LLM&#xff08;大型语言模型&#xff09;的模型和数据规模不断增加&#xff0c;但它们仍然面临事实错误的问题。现有的Retrieval-Augmented Gen…

Linux本地docker一键部署traefik+cpolar实现远程访问dashboard界面

文章目录 前言1. Docker 部署 Trfɪk2. 本地访问traefik测试3. Linux 安装cpolar4. 配置Traefik公网访问地址5. 公网远程访问Traefik6. 固定Traefik公网地址 前言 Trfɪk 是一个云原生的新型的 HTTP 反向代理、负载均衡软件&#xff0c;能轻易的部署微服务。它支持多种后端 (D…

pycharm中如何去除波浪线的设置

pycharm中&#xff0c;碰到恼人的红绿波浪线&#xff0c;打开’file-settings’&#xff0c;然后&#xff0c;参照如图设置&#xff0c;去除’effects’选项&#xff1a;

SQL注入靶场—sqli-labs安装

第一步&#xff1a;从下面的网址下载sqli-labs软件包 ①、、下载安装phpstudy&#xff08;直接解压安装即可&#xff09; 链接&#xff1a;https://pan.baidu.com/s/1X8G_qXnTXQh_S3NAF2ux_A 提取码&#xff1a;2693 --来自百度网盘超级会员V4的分享 ①、下载sqli-labs压缩…

看看CHAT是怎么写MPP开发和调度策略

CHAT回复&#xff1a;MPP&#xff08;Massively Parallel Processing&#xff09;开发和调度策略是一种并行处理技术&#xff0c;主要用于大规模数据仓库和数据竞赛应用。 1. 数据分布&#xff1a;这是MPP系统的主要特点&#xff0c;也是其能够提高性能和吞吐量的主要原因。通常…

CSS

注释标签的快捷键&#xff1a;Ctrl/ 1&#xff0c;选择器写法 类选择器&#xff1a;重要重要重要 id选择器&#xff1a;样式#定义&#xff0c;结构id调用&#xff0c;只能调用一次 。div就是一个盒子&#xff0c;用来装网页内容的 通配符选择器&#xff1a;不需要调用&#x…

【华为数据之道学习笔记】5-2华为数据湖的特点

华为数据湖是逻辑上对内外部的结构化、非结构化的原始数据的逻辑汇聚。数据入湖要遵从6项入湖标准&#xff0c;基于6项标准保证入湖的质量&#xff0c;同时面向不同的消费场景提供两种入湖方式&#xff0c;满足数据消费的要求。经过近两年的数据湖建设&#xff0c;目前已经完成…

芒果RT-DETR改进实验:深度集成版目标检测 RT-DETR 热力图来了!支持自定义数据集训练出来的模型

💡该教程为改进RT-DETR指南,属于《芒果书》📚系列,包含大量的原创改进方式🚀 💡🚀🚀🚀内含改进源代码 按步骤操作运行改进后的代码即可💡更方便的统计更多实验数据,方便写作 芒果RT-DETR改进实验:深度集成版目标检测 RT-DETR 热力图来了!支持自定义数据集…

c++ qt 窗口开发中 俩按钮组合 配合 显影 已解决

在日常项目中&#xff0c;有这么需求&#xff0c;还想窗口移动&#xff0c;还想 右侧关闭 还能tab栏点击显影的需求&#xff0c;不得使用 qt模拟点击事件 进行功能优化 特大杯 大杯 控制 窗口显影&#xff0c; 咖啡 按钮 显示窗口 可乐 豆浆 不显示窗口 四个按钮的 互斥关…

go学习之网络编程

文章目录 网络编程1、网络编程的基本介绍2.网络编程的基础知识1&#xff09;协议(tcp/ip)2&#xff09;OSI与TCP/ip参考模型3&#xff09;ip地址4&#xff09;端口(port)介绍5&#xff09;tcp socket编程的客户端和服务器端 3.socket编程快速入门4.经典项目-海量用户即时通讯系…

DevEco Studio 项目鸿蒙(HarmonyOS)资源引用(自定统和系统)

DevEco Studio 项目鸿蒙&#xff08;HarmonyOS&#xff09;资源引用&#xff08;自定统和系统&#xff09; 一、操作环境 操作系统: Windows 10 专业版 IDE:DevEco Studio 3.1 SDK:HarmonyOS 3.1 二、资源访问 HarmonyOS应用资源分为两类&#xff0c;一类是应用资源&…

kafka学习笔记--Kafka副本

本文内容来自尚硅谷B站公开教学视频&#xff0c;仅做个人总结、学习、复习使用&#xff0c;任何对此文章的引用&#xff0c;应当说明源出处为尚硅谷&#xff0c;不得用于商业用途。 如有侵权、联系速删 视频教程链接&#xff1a;【尚硅谷】Kafka3.x教程&#xff08;从入门到调优…

go基础学习

用变量&#xff0c;之前需&#xff0c;先定义&#xff0c;该变量 一个go语言接口的模型&#xff1a;https://gitee.com/goku_black/go-gin-struct-test/blob/master/main.go 1、a和a区别&#xff1f; a是先进行取值&#xff0c;后进行自增。a是先进行自增&#xff0c;后进行取…

引用阿里图标库,不知道对应的图标是什么,可在本地显示图标ui,再也不要担心刚来不知道公司图标对应的是什么了

项目中使用了阿里的图标库&#xff0c;但是无法看到对应显示什么&#xff0c;每次都要去阿里图标库里面找 在下载下来的文件中会发现有两个文件一个是iconfont.css和iconfont.json&#xff0c; 这两个文件的数据可以拿到然后显示在页面上 有两个问题&#xff1a; 1&#xff1a…
最新文章