文章目录
前言
在计算机科学的浩瀚宇宙中,C语言犹如一颗璀璨的星辰,历经数十载风雨,依旧熠熠生辉。它不仅是编程初学者踏入编程世界的钥匙,更是系统编程、嵌入式开发等领域的核心语言。两年前,我初次与C语言相遇,那份对未知世界的好奇与探索的热情,至今仍让我记忆犹新。如今,我决定再次踏上这段旅程,以更加深入和全面的视角,重新探索C语言的魅力。
本次专栏的重启,不仅是对我过去学习的一次回顾与总结,更是对未来探索的一次全新启程。我将从C语言的基本概念、历史背景、编译器选择,以及VS 2022这一强大集成开发环境的优缺点等多个方面,从这篇文章起带领大家一起领略C语言的独特魅力。希望这次旅程,能够让你对C语言有更加深刻的理解和认识,也期待你能够在这段旅程中找到属于自己的编程之光。
一、C语言是什么?
C语言是一种计算机语言,它是人类与计算机之间进行交流的一种工具。就像我们人与人之间交流使用汉语、英语等自然语言一样,C语言允许我们编写程序,将我们的想法和指令以计算机能够理解和执行的方式表达出来。
当我们用C语言编写好程序后,计算机可以读取这些程序,并按照我们的指令进行工作,从而完成我们想要实现的功能。C语言因其高效、灵活和可移植性等特点,在计算机科学领域得到了广泛的应用,是许多初学者接触和学习编程的首选语言之一。
C语言就是众多计算机语言中的一种,当然C++/ava/Go/Python都是计算机语言。
二、C语言的历史和辉煌
C语言的发展历程可以追溯到1969年,当时贝尔实验室的肯·汤普森(Ken Thompson)与丹尼斯·里奇(Dennis Ritchie)正在开发Unix操作系统。最初,Unix是用汇编语言编写的,但为了方便移植到其他计算机上,他们决定使用一种更高级的语言来重写整个系统。
在BCPL语言的基础上,肯·汤普森发明了B语言。然而,随着Unix系统的不断发展,B语言逐渐显露出其局限性。于是,在1972年,丹尼斯·里奇和布莱恩·柯林汉(Brian Kernighan)在B语言的基础上重新设计了一种新语言,这种新语言取代了B语言,并被称为C语言。
C语言的设计简洁而强大,它提供了对底层硬件的直接访问能力,同时保持了良好的可移植性和兼容性。这使得C语言迅速在Unix系统的开发中得到了广泛应用,并逐渐成为了系统编程的首选语言。
随着时间的推移,C语言的影响力不断扩大。在1988年,美国国家标准协会(ANSI)正式将C语言标准化,这标志着C语言开始进入稳定和规范化的发展阶段。此后,C语言继续在计算机科学领域发挥着重要作用,广泛用于各种操作系统、系统软件以及应用软件的开发中。
直到今天,C语言仍然保持着其强大的生命力和广泛的应用范围。在计算机语言的排行榜上,C语言一直稳居前五,成为了计算机科学领域不可或缺的一部分。
尽管C语言已经存在了几十年,但它仍然是计算机编程界最重要的语言之一。随着计算机技术的不断进步,C语言也在不断发展和完善。例如,C99和C11标准引入了许多新特性和改进,使得C语言在现代软件开发中仍然保持着活力。最新的C语言标准是C23,它继续推动着C语言的发展和进步。
三、编译器的选择
3.1 编译和链接
为什么要有编译器呢?这里我们就要讲一个知识点 --- 编译和链接。
C语言是一门编译型计算机语言,这意味着C语言的源代码并不能直接被执行,而是需要经过一系列的转换过程。C语言的源代码都是以文本文件的形式存在的,这些文本文件包含了程序员编写的程序代码。然而,这些文本文件本身是无法直接执行的,因为它们不是计算机可以直接理解的二进制代码。计算机能够识别的是二进制指令。
所以为了将C语言的源代码(例如下图的test.c)转换为计算机可以执行的二进制代码,我们需要使用编译器。
编译器是我们编译和链接的工具,它可以将C语言的源代码翻译成计算机可以直接理解的汇编代码,然后再将汇编代码进一步转换成二进制代码,也就是可执行文件。这个过程被称为编译过程。
在编译过程中,我们还需要使用链接器。链接器的作用是将编译后的对象文件(也就是编译过程中生成的中间文件)组合成一个完整的可执行文件。这个过程被称为链接过程。
刚才的过程可能很简单,实际的项目开发过程中是很复杂的。我们刚刚只有一个test.c文件,实际上可能有很多个.c文件。那每一个.c文件都会经过处理生成.obj文件,然后多个目标文件,再加上链接库,通过链接器的处理,生成可执行程序.exe。
总结:
1.每个源文件(.c)单独经过编译器处理生成对应的目标文件(.obj为后缀的文件)
2.多个目标文件和库文件经过链接器处理生成对应的可执行程序(.exe文件)
3.2 编译器的对比
C语言是一门编译型的计算机语言,需要依赖编译器将计算机语言转换成机器能够执行的机器指令。那我们常见的C语言编译器都有哪些呢?
,比如:msvc、clang、gcc就是一些常见的编译器,当然也有一些集成开发环境如:VS2022、,XCode、CodeBlocks、DevC++、Clion等。
- VS2022集成了MSVC(安装包较大一些,安装简单,无需多余配置,使用起来非常方便)
- XCode集成了clang(苹果电脑上的开发工具)
- CodeBlocks集成了gcc(这个工具比较小众,需要配置环境,不太推荐)
- DevC++集成了gcc(小巧,但是工具过于简单,对于代码风格的养成不好,一些竞赛使用)
- Clion是默认使用cMake,编译器是可以配置的(工具是收费,所以暂时推荐大家使用)
四、VS 2022的优缺点
在下一篇文章中,我会出安装教程,那这篇文章我们就聊聊这个VS 2022 的优缺点
优点:
- VS2022 是一个主流的集成开发环境,企业中使用较为普遍.
- VS2022 包含了编辑器+编译器+调试器,功能强大
- 直接安装即可使用,基本不用额外配置环境,
- 上手容易默认界面是中文的,初学者友好
缺点:
- 功能丰富,安装包大,占用空间多
总结
随着我们对C语言的深入探索,我们不仅了解了它的基本概念、历史背景,还掌握了编译器的选择以及VS 2022这一集成开发环境的优缺点。C语言以其高效、灵活和可移植性等特点,在计算机科学领域占据着举足轻重的地位。而VS 2022作为一款功能强大的集成开发环境,为我们提供了便捷的开发体验,尽管它安装包较大,但上手容易且初学者友好,是企业中广泛使用的开发工具之一。下篇文章我将带大家安装vs2022,敬请期待,如果可以的话,留下你的点赞,关注和收藏叭。