马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Ⅲ只小猪 于 2021-1-26 19:24 编辑
前言
此文章在于分为MinGW与MinGW-w64、MSVC、最新的GCC、GCC与G++
内容可能比较长,总共1240字。但是阅读完后,会解决的你的许多疑问
让我们开始吧!
MinGW与MinGW-w64
我们都知道要学习、编写C语言程序,就必须有C语言的编译器
而其中我们最熟知且常用的
恐怕就是多平台的GCC和Windows下的MSVC(Microsoft Visual C++)了
Windows平台下常用的则是MinGW,MinGW-w64和MSVC
而其中MinGW(-w64)则是基于Linux下的GCC把它移植到Windows平台下的产物
MinGW可以在Windows平台下把C源文件编译成.exe应用程序,但是它有一个缺点,
那就是不能把源文件编译成64位的(这时就有人说:我电脑好,我就是要跑64位的才爽!!!)。
于是MinGW出现了一个分支,那就是MinGW-w64(现已独立发展)。顾名思义,就是可以编译64位的。
这就很爽了,兄弟们!当然,它分为64位和32位两个版本,也就是说,他还可以编译成32位(通吃,恶心心)
如今MinGW早已停止更新,官方的Windows版本更新日期永远停留在了2017年。(今天突然发现连官网都上不了了)。
而原本作为分支的MinGW-w64内置的gcc版本却早已更新到8.1.0(到目前为止最新的gcc官方正式版本为10.2),
由于仅有MinGW-w64被GCC官方所支持, 而MinGW早已停止更新, 所以我更推荐使用MinGW-w64。
但是它需要添加环境变量,安装起来比较麻烦
MSVC
MSVC是由微软这个大公司开发的,具有稳定的更新,且不是基于gcc,所以一些比较新的C\C++标准都是能安排上的。
而且它已经封装好,不需要再添加环境变量什么的了,不需要配置,开箱即用。
但是它也有缺点,那就是太大了!(体积达4.8G)而且如果要使用它,
可能也意味着要安装Visual Studio,但是它使用起来比较麻烦,新手可能不太适应。
而且会对他产生依赖,虽然VS code可以调用MSVC进行编译,但是前提是每次必须从命令行启动vs code。。。这个嘛,大家看情况是否要安装MSVC吧。。。
所以我觉得Windows下,vs code + gcc是个很不错的选择(自己动手,丰衣食足)配置方法可以看这个帖子 https://fishc.com.cn/thread-188396-1-1.html
最新的GCC
这是可能就有鱼油要问了,那么在哪里下载最新的gcc啊?其实gcc的版本不同对于我们学习并没有太大的影响,
只要C语言的标准不是很旧就行了,而且有很多关键字我们都是用不到的。
可以参考甲鱼老师的《带你学C带你飞》(里面Linux中用的gcc是4点几的版本)。
但如果你真的想用最新的gcc,方法很简单,安装最新的Linux系统,然后直接sudo apt install gcc就行了。
但是总感觉有点亏。。。所以并不是很建议这样做(强迫症忍忍吧)
这时又有人问了,诶,那C语言怎么不出一个官方网站,再出一个官方编译器啊。
抱歉,C语言不隶属于任何一个公司,所以它没有官方网站,也没有官方编译器。
而C语言的各种标准是由ISO制定的。
GCC与G++
我们一般都会发现,在安装C语言编译器时,编译器总是署名C++(C++的编译器是G++)
就连《带你学C带你飞》里在虚拟机中安装gcc时的命令也是yum -y install gcc gcc-c++ kernel-devel
诶,我就学C语言,怎么还跟C++扯上关系了呢,其实C++发明出来的时候,是兼容C语言的,
也就是说C语言的代码可以直接复制到C++里。于是C++就被附赠到了C语言的编译器中,而现在,C语言反而成了陪衬。。。
|