windows下gcc编译C、C++程序 MinGW编译器

文章目录

  • 1、概要
  • 2、MinGW安装
    • [2.1 编译器下载](#2.1 编译器下载)
    • [2.2 编译器安装](#2.2 编译器安装)
    • [2.3 设置环境变量](#2.3 设置环境变量)
    • [2.4 查看gcc版本信息](#2.4 查看gcc版本信息)
  • 3、编译C、C++程序
    • [3.1 编写Hello World.c](#3.1 编写Hello World.c)
    • [3.2 编译C程序](#3.2 编译C程序)
    • [3.3 运行程序](#3.3 运行程序)
    • [3.4 编译C++程序](#3.4 编译C++程序)

1、概要

GCC原名为GNU C语言编译器(GNU C Compiler),只能处理C语言。但其很快扩展,变得可处理C++,后来又扩展为能够支持更多编程语言,如Fortran、Pascal、Objective -C、Java、Ada、Go以及各类处理器架构上的汇编语言等,所以改名GNU编译器套件(GNU Compiler Collection)。GCC支持多种计算机体系结构芯片,如x86、ARM、MIPS等,并已被移植到其他多种硬件平台。

MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时(C Runtime)库(MSVCRT.DLL),该库在所有的 NT OS 上有效,在所有的 Windows 95发行版以上的 Windows OS 有效,使用基本运行时,你可以使用 GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的 C 运行时(C Runtime)扩展,与基本运行时相结合,就可以有充分的权利既使用 CRT(C Runtime)又使用 WindowsAPI功能。

2、MinGW安装

2.1 编译器下载

下载地址:MinGW - Minimalist GNU for Windows - Browse Files at SourceForge.net

下载后文件如mingw-get-setup.exe。

2.2 编译器安装

双击运行"mingw-get-setup.exe"

"Install"

默认根据需要选择目录,安装目录"C:\MinGW"。"Continue";

"Continue"

选择要安装的组件

选择C编译器、C++编译器等

"Installation"-"Apply Changes"

"Apply"

安装完成,"Close"

2.3 设置环境变量

"设置"-"系统'-"系统信息"-"设备规格"-"高级系统设置"-"系统属性"-"高级"-"环境变量"-"系统变量"

"path"-"编辑"

添加MinGW安装路径

2.4 查看gcc版本信息

3、编译C、C++程序

3.1 编写Hello World.c

3.2 编译C程序

在文件所在目录打开命令行

使用gcc编译*.c文件

3.3 运行程序

在当前目录生成可执行文件"Hello_World.exe"。运行可执行文件

3.4 编译C++程序

使用g++编译*.cpp文件

相关推荐
码哥DFS1 小时前
二叉树的直径
开发语言·javascript·算法
paopaokaka_luck2 小时前
基于springboot3+vue3的企业考勤管理系统(部门树递归、Echarts图形化分析)
开发语言·spring boot·学习·echarts·mybatis·需求分析·代码规范
梦雨生生3 小时前
java开发工具(学习第一天)
java·开发语言·学习
啊啊啊啊啊!!!!4 小时前
【c++】stack和queue的接口使用以及底层实现
开发语言·c++
松仔log5 小时前
Java中级——组合和继承
android·java·开发语言
上海安当技术6 小时前
C/S 桌面软件怎么接 UKey 强认证?C# SDK 与 C 动态库集成 WinForms/Qt/工控实战
c语言·qt·c#
(Charon)7 小时前
【C++】锁与原子操作(四):自旋锁的完整实现与性能优化
c语言·开发语言·c++
雨田言炎7 小时前
五、Qt控件使用说明大全
开发语言·qt
ShineWinsu8 小时前
对于Linux:五种IO模型以及非阻塞IO的详细解析
linux·c++·面试·io·阻塞·非阻塞·fcntl
bu_shuo8 小时前
MATLAB中的meshgrid和ndgrid
开发语言·matlab