什么是编译器?为初学者解释 C 语言中的编译器 |
您所在的位置:网站首页 › c语言一般用什么编译器比较好一点 › 什么是编译器?为初学者解释 C 语言中的编译器 |
原文:What is a Compiler? Compilers in C Explained for Beginners,作者:Tiago Monteiro 你是否知道软件的存在要归功于编译器? 确切地说 ,编译器非常重要,所有编程语言中都存在某种形式的编译器。 但是,什么是编译器?它们到底做了什么? 本文将教分享: 用一个比喻说明什么是编译器C 语言编译器的基本历史别担心,你不需要编程经验来了解编译器是什么。 你只需要先理解这个概念,然后如果你愿意,你可以去寻求技术定义。 1. 什么是编译器?照片来自 Pexels,作者 Tyler Lastovich想象一下,你正在学习一门语言(法语、西班牙语或葡萄牙语),并且你想知道单词或句子的含义。 为此,你将使用谷歌翻译。 第一步是知道你将在Google翻译中键入的内容,并检查其键入是否正确。 第二步是选择要转换的语言。对于许多读者来说,这可能是英语。 第三步也是最后一步是了解这句话在英语中的含义。 从本质上讲,你只是在Google翻译中输入了你不理解的句子或单词,谷歌翻译将这句话翻译成英文。 示例:nadar(葡萄牙语)-> swimming(英语)同样的事情也发生在编程中。 在这种情况下,我们使用的是 C 语言。 你必须采取的第一步是知道你将在.c文件中键入的内容以及是否正确键入。 在此示例中,该文件称为main.c。 #include int main() { printf("Hello World"); return 0; }第一步:此代码将打印 “Hello world”第二步是编译它。它将根据你的编译器进行编译。 gcc -o main main.c -Wall第二步:编译c代码的命令第三步也是最后一步是简单地了解程序的输出 - 确保它像我们想要的那样运行。 快速提示:如果你想知道命令行终端中每个单词的含义,请查看本文的“更多...”部分! 第三步:Hello world你可以在下图中看到编译过程的直观说明: 比较 C 文件的编译与单词的翻译C 语言编译器的工作原理图片来自 Pexels,作者 JÉSHOOTS多年来,技术以惊人的速度发展。这同样适用于编译器。 随着时间的推移,C 语言编译器已经演变成许多版本。 就像 PlayStation – 有 Playstation 2、Playstation 3、Playstation 4, 等等。 C 语言编译器也是如此。一旦它被标准化,就创建了许多版本: C89/90, C的一个标准化版本C99 在1999年取代了C89和C90C11 在2011年取代了C99C17 在2018年取代了C11C2X 将在2023年取代C17就像 PlayStation 一样,每个新版本都有新功能。 有些人更喜欢在他们的 PlayStation2 上玩。 程序员也是如此。由于各种原因,程序员可能更喜欢使用 C99 或 C11 编写和调试 C 代码。 有关编译器的更多信息我们在上面的代码中看到的"gcc -o main main.c -Wall"到底是什么意思?让我们一点一点地分解一下。 gcc 是调用编译过程(预处理、编译、程序集和链接)的命令。 -o main 表示由编译"main.c"创建的可执行文件的名称将称为"main"。 main.c 是要编译的文件的名称。 -Wall 该选项启用编译器警告。编译器警告会让你知道代码中的某些内容不太正确。 这类似于语法。 如果语法建议更改句子,在大多数情况下,你应该更改它以使其更清晰、更正确。 否则,如果你试图改变一个已经正确的短语中的某些内容,它可能会变得难以辨认。 同样,如果忽略代码中的警告,它最终会导致重大错误,你的项目甚至可能失败。 "标准化"是什么意思?所以你可能想知道,我们在上面看到的"标准化"是什么意思? 图片来自 Pexels,作者 Pixabay让我们通过另一个类比来看看它。建造房屋的方法有很多种。但是有一种方法通常是最有效和最安全的。 因此,人们和组织必须同意有一种标准的建造房屋的方式。 创建该标准的过程称为标准化。 当一组规则成为标准时,这组规则就变得标准化。 这组规则可以是法律,证书,也可以只是某个领域工人使用的基本惯例。 这同样适用于 C 语言编译器。 正是标准化帮助人们就应该如何做事达成一致,无论是 C 语言编译器,汽车组件还是其他任何东西。 标准化还可以帮助人们就使用哪个版本的C达成一致。C 语言编译器就是一个例子。 长期以来,C 语言编译器一直被认为是软件开发的基本组成部分。 由于采用了 C 语言编译器标准,开发人员可以编译和运行其他人的代码,而不必担心他们的编译器无法正常工作。 为了创建如此重要的行业组成部分,必须有一个组织负责建立标准 许多组织创建和管理标准。对于 C 语言编译器,ISO(国际标准化组织)管理标准。 只要ISO管理未来的 C 语言编译器标准,程序员和公司就可以开发可靠的软件。 结语感谢你阅读本文!现在你明白了: 什么是编译器C 语言编译器的历史标准化意味着什么这个 GitHub 仓库包含我创建的代码和图像文件。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |