C语言学习

文章目录
  1. 1. C语言简介
    1. 1.1. 编译架构
    2. 1.2. C语言的特点
    3. 1.3. C语言与C++

C语言简介

C语言是1972年在美国贝尔实验室诞生,由丹尼斯●里奇、肯●汤普森设计的B语言为基础发展而来的;在该语言设计完成后,两人用它重写了UNIX系统,并使得在UNIX发展中C不断完善。于1989年诞生了第一个完备的C标准,简称“C89”,也就是“ANSI C”(美国国家标准协会制定的C标准)。它是一门面向过程的计算机编程语言,它以简易方式编译,可处理低级存储器,仅产生少量的机器码以及不需要任何运行环境支持便可运行的编程语言。与汇编相比可更快地描述问题,工作量小,可读性好,易于调试、修改和移植,代码质量相当,执行效率仅比汇编低10%~20%,因此可写系统软件。
发展历程: CPL→BCPL→B语言→C语言

C的成功源于可移植性,只要由那种架构对应的C编译器和库,便可将任意源代码放到这种架构上编译连接后生成目标二进制文件运行。这种可移植性使得代码可在不同架构上运行,无论是X86还是ARM。

编译架构

C语言编译平台架构图

C语言的特点

①简洁的语言(9种控制语句,32个关键字,与硬件关联少,配合各类库即可实现更多功能)
②结构化的控制语句
③丰富的数据类型(除含基本类型外,还含有最为灵活的指针类型)
④丰富的运算符(34个运算符)
⑤可对物理地址直接操作,允许对硬件内存地址进行直接读写,以实现汇编的主要功能
⑥代码具有较好的可移植性。
⑦生成的程序 高质量 高效率

C语言与C++

C是面向过程的语言,而C++是面向对象的语言,C++是为解决软件危机而诞生的,它提高了开发效率。早期并没有“C++”这个名字,而是成为带类的C,即C++主要是在C的基础上增加了面向对象和泛型的机制,提高了开发效率。随着C++的流行,其功能也得到完善,但并没有自己独立的编译器,编译还是通过原来C的编译器的不断扩展使之支持C++,故常称C/C++编译器,它同时支持C和C++。


版权声明

Scholar’s Blog by scholargeek is licensed under a Creative Commons BY-NC-ND 4.0 International License.
董仕麟创作并维护的scholargeek博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证

本文首发于Scholar’s Blog博客,版权所有,侵权必究。

本文永久链接:https://scholargeek.github.io/2018/02/01/C%E8%AF%AD%E8%A8%80%E5%AD%A6%E4%B9%A0/

更新日期:


本站总访问量