C语言学习系列:GCC编译器Windows版本MinGW-w64的安装教程

news2024/9/17 8:21:29

本文图文分享如何安装C语言编译器——MinGW-w64。

只要看到这篇文章,就可以按照文中步骤正确安装MinGW-w64并使用。

一、什么是 MinGW-w64 ?

我们知道C语言是高级语言,必须编译为二进制文件,才能为计算机运行,MinGW-w64就是完成编译工作的软件。
在这里插入图片描述

MinGW 的全称是:Minimalist GNU on Windows,它是开源C语言编译器GCC的Windows版本,可以将源代码编译为可在 Windows 中运行的可执行程序。

MinGW-w64 与 MinGW 的区别在于 MinGW 只能编译生成32位可执行程序,而 MinGW-w64 则可以编译生成 64位 或 32位 可执行程序。

MinGW 现已被 MinGW-w64 所取代,且 MinGW 也早已停止了更新。

二、为什么使用 MinGW-w64 ?

1,开源免费。MinGW-w64 是开源软件,可以免费使用。

2,社区活跃。MinGW-w64 由一个活跃的开源社区在持续维护,因此不会过时。MinGW-w64 支持最新的C语言标准。

3,一步到位。MinGW-w64 使用 Windows 的C语言运行库,因此编译出的程序不需要第三方 DLL ,可以直接在 Windows 下运行。

4,大厂背书。那些著名的开源 IDE 实际只是将 MinGW-w64 封装了起来,使它拥有友好的图形化界面,简化了操作,但内部核心仍然是 MinGW-w64。

5,安全可靠。MinGW-w64 是稳定可靠的、持续更新的 C/C++ 编译器,使用它可以免去很多麻烦,不用担心跟不上时代,也不用担心编译器本身有bug,可以放心的去编写程序。

三、MinGW-w64 适合做什么?

对于熟悉 MinGW-w64 的高手而言,它可以编译任何C语言程序。

对于一般人来说,MinGW-w64 太过简陋,连图形用户界面都没有,所以真正流行的是集成了 MinGW-w64 的IDE。

但对于C语言初学者,如下几个原因,使得MinGW-w64成为学习过程中的最佳选择:

  • 能装。黑色的命令提示符界面很能装
  • 简洁。在刚开始学C语言时,所有代码通常都写在一个文件中,只要输入几个简单的命令,就能用 MinGW-w64 编译成可执行文件,然后运行。但是那些著名的IDE比如VS,会自动生成一大堆工程文件,让初学者摸不着头脑,而 MinGW-w64 则只会生成一个可执行文件
  • 当然,真正工作还是用VS更好

四,安装MinGW-w64

1,下载

直接官网下载
https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/

打开网页后,下拉到下图位置:
在这里插入图片描述
点击下载,下载完成后,可以在文件系统中看到这个安装程序:

在这里插入图片描述

2,安装

解压即安装:
在这里插入图片描述

3,配置环境变量

3.1 右键此电脑,选择属性

在这里插入图片描述

3.2 选择高级系统设置

在这里插入图片描述

3.3 选择环境变量

在这里插入图片描述

3.4 双击Path

在这里插入图片描述

3.5 点击新建

在这里插入图片描述

3.6 输入第2步解压后目录下的bin目录所在路径

在这里插入图片描述
点击确定,即可完成环境变量配置。

4,测试

4.1,编写源码

下面是一个简单的 C 程序hello.c,它是一个普通的文本文件,任何文本编译器都能用来写。

#include <stdio.h>

int main(void) {
  printf("Hello World\n");
  return 0;
}

上面这个程序作用仅仅是在屏幕上面显示“Hello World”。

4.2,使用MinGw-w64编译

假设你已经安装好了 GCC 编译器,可以打开命令行,执行下面的命令:

gcc hello.c

在这里插入图片描述

上面命令使用gcc编译器,将源文件hello.c编译成二进制代码。

运行这个命令以后,默认会在当前目录下生成一个编译结果文件a.exe,如下图则表示编译成功。
在这里插入图片描述

此外,编译时可以通过GCC 的-o参数(output 的缩写)指定编译生成的文件名:

gcc -o hello hello.c

在这里插入图片描述

上面命令的-o hello指定编译生存的文件名为hello(取代默认的a.exe)。编译后就会生成一个名叫hello.exe的可执行文件,相当于为a.exe指定了名称。

4.3,运行

运行第2步编译生成的文件,就会在屏幕上输出Hello World。

如果是windows,打开cmd命令行,切换到代码所在目录下,执行如下命令:

hello.exe

有如下所示输出,表示编译的结果可运行:
在这里插入图片描述

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

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

相关文章

每日两题7

文章目录 买卖股票的最佳时机含冷冻期买卖股票的最佳时机含手续费 买卖股票的最佳时机含冷冻期 分析&#xff1a; class Solution { public:int maxProfit(vector<int>& prices) {int n prices.size();vector<vector<int>> dp(n, vector<int>(3…

path[1][0] path[1][1:-1] [path[1][-1] 分别怎么取的

假设的输入数据 假设 path 变量如下&#xff1a; path [path, [10515194, _derivationally_related_form, 00265386, _derivationally_related_form, 00800940, _hypernym, 00798245, _derivationally_related_form, 02589576]]示例代码 为了更清楚地展示这些操作&#xff…

OSFP 1类LSA详解

概述 上图为1类LSA的实际报文结构 , 在开始之前一定需要说明 , 1类LSA是OSPF中最复杂的LSA类型 , 在LSA头部的文章中详细介绍了 LS Type / Link State ID / Adv Router 3种头部字段 , 在1类LSA的主体内容中还存在类似的字段十分的相似 , 很多网络从业者难以理解的点就在于此 , …

2- 简易版-日记写作软件(java)-涉及的技术点简述

环境&#xff1a; Ubuntu LinuxJDK1.8Eclipse 项目文件结构&#xff1a; 0. 涉及的技术点 1)view 包&#xff08;GUI&#xff09;&#xff1a; Eclipse SwingEclipse WindowBuilderJFileChooser(用于弹出文件选择对话框&#xff0c;进行文件或目录的选择)FileNameExtension…

文案策划背后的秘密 | 职场高手养成记

要想在文案策划这个行当里混&#xff0c;首先得对自己的文字功底有足够的信心&#xff0c;那种“文章独步天下”的气势不可或缺。 要是没有这份自信&#xff0c;我建议你还是另寻他路。 要想跨入文案策划的大门&#xff0c;可以从以下几个方面入手&#xff1a; 1. 学习文案基…

探索OrangePi AIpro:单板计算机的深度体验之旅

准备阶段&#xff1a;环境与资料 在开始我们的探索之旅前&#xff0c;确保您已准备好以下装备&#xff1a; OrangePi AIpro&#xff1a;我们的主角&#xff0c;一台功能强大的单板计算机。Windows 10笔记本电脑&#xff1a;作为我们的辅助工具&#xff0c;用于管理和测试。路…

NOS II - Timer定时器

NOS II-Time定时器 简单回忆NIOS II中定时器的使用。 一、定时器的框图 二、定时器寄存器的描述 定时器的寄存器都是16bit的&#xff0c; 偏移量寄存器名称R/W15bit…4bit3bit2bit1bit0bit0Status - 状态寄存器R/W - 可读可写*****runTO1Control - 控制寄存器R/W***stopsta…

VSFT匿名用户访问-设置

1、先备份配置档 cp -av /etc/vsftpd/vsftpd.conf{,_bak} 2、编辑配置档&#xff0c;修改以下参数 vim /etc/vsftpd/ vsftpd.conf anonymous_enableYES -----允许匿名用户访问 anon_upload_enableYES -----允许匿名用户上传 anon_mkdir_write_enableYES …

汇编语言作业(五)

目录 一、实验目的 二、实验内容 三、实验步骤以及结果 四、实验结果与分析 五、 实验总结 一、实验目的 1.熟悉掌握汇编语言的程序结构&#xff0c;能正确书写数据段、代码段等 2&#xff0c;利用debug功能&#xff0c;查看寄存器&#xff08;CS,IP,AX,DS..)及数据段的…

办公风云颜值背后的职场正能量

办公风云&#xff1a;颜值背后的职场正能量当我们提到职场&#xff0c;脑海中浮现的往往是严肃的面孔、忙碌的身影和堆积如山的文件。但在这个看似单调的舞台上&#xff0c;总有一些人&#xff0c;用他们的颜值和才华&#xff0c;为我们上演了一场场别开生面的“大戏”。今天&a…

【CS.OS】堆管理算法:不同的堆分配和管理算法

1000.5.CS.OS.1.3-基础-内存管理-堆管理算法-Created: 2024-06-09.Sunday10:41 文章目录 1 内存分配算法概述1.1 首次适应&#xff08;First-Fit&#xff09;1.2 最佳适应&#xff08;Best-Fit&#xff09; 2 伙伴系统&#xff08;Buddy System&#xff09; 3 总结References …

PlantSimulation导入cad图作为背景

PlantSimulation导入cad图作为背景 首先要整理cad文件&#xff0c;正常的工艺规划总图中存在较多杂乱文件&#xff0c;这些信息是不需要的&#xff0c;如果直接导入&#xff0c;会非常卡。 1、打开cad软件&#xff0c;使用layon命令打开所有的隐藏图层&#xff0c;删除不需要…

品品香·山东航空老白茶文化主题专属航班香上云端

&#xff16;月&#xff16;日&#xff0c;品品香山东航空“浓情过端午&#xff0c;白茶品品香”老白茶文化主题专属航班&#xff33;&#xff23;&#xff18;&#xff18;&#xff11;&#xff19;济南遥墙&#xff0d;成都天府顺利起飞&#xff0c;携中国老白茶标杆——晒白…

Spring Boot整合Redis实现发布/订阅功能

&#x1f604; 19年之后由于某些原因断更了三年&#xff0c;23年重新扬帆起航&#xff0c;推出更多优质博文&#xff0c;希望大家多多支持&#xff5e; &#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Mi…

目标检测算法YOLOv9简介

YOLOv9由Chien-Yao Wang等人于2024年提出&#xff0c;论文名为&#xff1a;《YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information》&#xff0c;论文见&#xff1a;https://arxiv.org/pdf/2402.13616 &#xff1b;源码见: https://github.com/W…

U-Mail:企业邮箱系统安全解决方案

在数字化浪潮的推动下&#xff0c;互联网技术正日新月异&#xff0c;企业的信息通信需求亦随之升华。作为企业沟通的重要媒介&#xff0c;企业邮箱已被广泛应用&#xff0c;然而随着其应用范围的不断扩展&#xff0c;也给企业带来了一系列挑战&#xff1a; 一、统一身份认证管…

MySQL-数据处理函数

026-distinct去重 select job from emp;加个 distinct 就行了 select distinct job from emp;注意&#xff1a;这个去重只是将显示的结果去重&#xff0c;原表数据不会被更改。 select 永远不会改变原数据 select distinct deptno, job from emp order by deptno asc;027-数…

Kubernetes入门-大简介

目录 何为微服务 何为云原生 何为编排器 “Kubernetes”这个名字来自希腊语&#xff0c;意思是“舵手”舵手是一个航海/航行术语&#xff0c;指掌舵的人从本质上说&#xff0c;Kubernetes是云原生微服务(cloud-native microservice)应用的编排器(orchestrator) 何为微服务 …

【C++类和对象中篇】(构造函数和析构函数)

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;C课程学习 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 &#x1f369;1.默认成员函数的概念&#xff1a; &#x1f369;2.构造函数&#xff1a; 2.1特性&…

刚刚❗️德勤2025校招暑期实习测评笔试SHL测评题库已发(答案)

&#x1f4e3;德勤 2024暑期实习测评已发&#xff0c;正在申请的小伙伴看过来哦&#x1f440; ㊙️本次暑期实习优先考虑2025年本科及以上学历的毕业生&#xff0c;此次只有“审计及鉴定”“税务与商务咨询”两个部门开放了岗位~ ⚠️测评注意事项&#xff1a; &#x1f44…