【C基础】1. 历史与发展


前言(Preface)

本专题主要聚焦于 C

因为在学习过程中可能会遇到需要使用多种语言的场景。例如 CC++PythonJavaMatlabHTML/CSSJavaScript/TypeScript 等的基础语法,它们的本质架构是类似的,但又有些区别。对于具体的语法算法,我会试图用例子来说明不同语言间的实现区别。限于能力,本文不去探究其深层本质,仅仅归纳总结表面的语法现象。

后续都会慢慢更新。不足之处,欢迎在评论区指出。


历史(History)

简述

  • C语言的主要设计者为贝尔实验室D.M. Ritchie上世纪70年代问世。
  • C语言的设计初衷是为了尽可能降低硬件依赖性,从而可以在不同的机器上运行。
  • C语言属于编译型语言。面向过程编程。通过编译二进制机器码运行。
    • 优点代码量小执行速度快
    • 缺点:代码实现周期长可移植性差

应用领域

  • 游戏引擎(Unity、 Cocos Creator)
  • 操作系统(Windows、 Linux)
  • 嵌入式(MCU)

主要版本

  • C89(ANSI C):1989年制定,完全支持
  • C90(ISO C):1990年制定,完全支持
  • C99:1999年制定,部分支持
  • C11:2011年制定,并不流行

主流编译器

  • GCCGNU Compiler CollectionGNU编译器套件。初衷是为GNU操作系统专门编写,现已被大多数类Unix操作系统采纳为标准的编译器。主要用于编译CC++
  • LLVM+Clang苹果公司发布。编译速度快,内存占用少,诊断信息可读性强
  • MSVC:支持Windows系统的编译器,Visual Studio底层所使用的编译器之一。

需要注意的是,一般Linux发行版自带GCC编译器,而Windows默认是没有C/C++编译器的。

MinGW是一个GCCWindows移植版。可以去官网自行下载,配置C语言运行环境


编辑器推荐

  • Dev C++:轻量级,新手友好
  • Visual Studio:全能型
  • Visual Studio Code:简称VS code,界面很好看。

总结

C语言是一门经典的语言,同时也是学习C++的基础,至今仍有大量应用。

本系列借鉴的参考书目如下1 2 3 4 5


  1. 《C 程序设计 第五版》 ↩︎

  2. 《C和指针》 ↩︎

  3. 《C陷阱与缺陷》 ↩︎

  4. 《C专家编程》 ↩︎

  5. 《C Primer Plus 第五版》 ↩︎

猜你喜欢

转载自blog.csdn.net/m0_46500149/article/details/132502609
今日推荐