通过MinGW64讲解C语言是如何在计算机中运行的

1、计算机程序语言

人和人之间交流通过语音,中国人之间用中国话,英国人用英语。那么人和计算机交流,也要解决语音问题。这就是计算机语言。

但是计算机工作基于二进制,从根本来说,计算机只接受和识别0和1组成的指令。

当中国人和英国人交流时,我们说中文可以翻译成英文。这样英国人就能看懂。同理,我们的程序设计语言,也可以翻译成计算机能识别的机器语言。这就是编译与链接的原理。
在这里插入图片描述
上图是我们上课的PPT剪影,说实话,第一次看到我也是一脸懵逼。在这里插入图片描述

2、编译器和链接器

编译器是提供将程序源文件以文本格式翻译成成机器语言的一个软件。例如:我输入一个简单的C语言程序“main.c”,编译器将扫描改文件,并检查语法规则。如果语法规则正确,编译器将保存为目标文件"main.obj"

简单来说,编译器是提供一个将高级语言翻译的一个软件

那么链接器的角色就是:将目标文件封装成计算机能运行的可执行文件。

例如将“main.obj”添加库函数和其他目标文件,生成“main.exe”

常用的C语言编译器有GCCMicrosoft Visual C++。这意味着可以在MinGW(或者MinGW64),Cygwin和Microsoft Visual Studio工具集进行选择。

几个编译器都有什么区别,你们可以自己找一下资料。
我这里转载一篇文章,仅供参考
最好的windows c++编译器!

3、MinGW64介绍及下载

MinGW(Minimalist GNU for Windows), 是一个适用于微软windows应用程序的极简洁的开发环境。MinGW提供了一个完整的开源编程工具集,适用于原生MS-Windows应用程序的开发,并且不依赖于任何第三方C运行时DLL。MinGW主要供在MS-Windows平台上工作的开发人员使用,但也可跨平台使用。

详细可以参考MinGW官网链接

Mingw-w64是原始mingw.org项目的升级版,该项目旨在支持Windows系统上的GCC编译器。 它在2007年进行了分支,以便为64位和新API提供支持。 从那以后,它得到了广泛的使用和分发。

下载mingw64可以到SourceForge这个开源软件开发者进行开发管理的集中式场所下载链接
在这里插入图片描述
SourceForge也是个开源软件的社区,在mingw64的评论我发现了这个
在这里插入图片描述
这段英文的大意是:一个国外的老哥,文件下载特别慢,但很快找到了解决方法。(其实在中国,文件下载也非常的慢)只要在下载的时候选择"Problems Downloading" 。但是我始终找不到"Problems Downloading" 按钮。不过我在下载的时候选择了“使用迅雷下载”,下载速度非常的快。

如果不行,可以联系我要离线的安装包。可以加我的QQ:729834741,或者我准备了百度网盘链接

链接:https://pan.baidu.com/s/1nyBrBRXtKd48pmvwWz4jAg
提取码:lmlc

复制这段内容后打开百度网盘手机App,操作更方便哦
MinGW-W64-install.exe的在线安装教程如下
在这里插入图片描述
在这里插入图片描述
下面对几个选项给出说明
(1) Version制定版本号,从4.9.1-8.1.0,按需选择,没有特殊要求就用最新版吧;
(2) Architecture跟操作系统有关,64位系统选择x86_64,32位系统选择i686;
(3) Threads设置线程标准可选posix或win32;
(4) Exception设置异常处理系统,x86_64可选为seh和sjlj,i686为dwarf和sjlj;
(5) Build revision构建版本号,选择最大即可。

如果是下x86_64-posix-she载离线压缩包(见图2),选择合适位置解压,解压(也就是安装)位置最好在本地盘符的根目录下,路径尽量简单。
在这里插入图片描述
然后将mingw64/bin加入环境变量即可。

4、MinGW64配置过程

在桌面右击“此电脑”—“属性”—“高级系统设置”—“环境变量”—“Path”—"编辑“
在这里插入图片描述
在打开的“编辑环境变量”对话框中,点击“新建”一个新的环境变量,然后把图5所示的mingw-64的解压(安装)路径复制,并粘贴到新环境变量中。如图7所示“C:\mingw64\bin”的新变量,就是我电脑中mingw-64的安装路径。
在这里插入图片描述
最后,我们要验证一下mingw-w64是否安装成功,在命令行空口中,输入gcc -v后回车,出现如同8所示的版本信息,就表明mingw-w64是安装成功了,如果未出现版本信息则需要再检查一下,如果这里出现问题,后面全部无法进行。
在这里插入图片描述
这样我们的编译器就安装完成了!

5、编译过程

编译过程的分步执行,常用命令有:
gcc -c
编译后停下来,生成后缀为 .o 的目标文件。
gcc -c
汇编后停下来,生成后缀为 .s 的汇编源文件。
gcc -o
将生成的目标文件链接成可执行文件
gcc
直接将c语言文件编译链接,生成可执行文件

安装了C语言的编译器,即使没有IDE,也可以使用windows自带的文本文件写C语言程序,使用带命令提示符运行C语言。

下面为演示过程
在这里插入图片描述
我在桌面新建了一个文件夹,命名为C文件夹

右键新建一个文本文件,改名为main.c文件

以记事本方式打开复制一下代码,保存。我们在屏幕打印一个hello world。

#include <stdio.h>

int main()
{
    printf("hello world\n");
    return 0;
}

在这里插入图片描述
使用快捷键win+ R打开运行,输入cmd,打开带命令提示符
在这里插入图片描述
使用命令将带命令提示符位置移动到桌面文件夹下
在这里插入图片描述
生成目标文件
在这里插入图片描述
在这里插入图片描述
此时,main.o为目标文件,还不能被计算机运行,我们需要链接一下,运行。
.o文件其实是linux编译之后的二进制文件,就相当于windows的obj文件
在这里插入图片描述
这样编译C语言文件实在是太慢太繁琐了。我们也可以使用gcc命令一键编译链接。
在这里插入图片描述

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值