设计特性: 融合了计算机科学理论和实践的控制特性
优点
1.高效性:具有汇编语言才具有的微调控制能力(汇编语言是为特殊的中央处理单元设计的一系列内部指令,使用不同的助记符来表示,不同的CPU系列使用不同的汇编语言),可以根据具体情况微调程序以获得最大运行速度或更有效的处理内存
2.可移植性:代码可在不同的系统运行,许多计算机体系结构都可以使用C编译器(将代码转换成计算机内部指令的程序)。但程序中针对特殊硬件设备编写的部分,通常是不可移植的。
3.灵活而强大:其他语言的编译器和解释器都是用C语言编写的,在UNIX机上,系统运行其他语言最终都是通过C程序生成最后可执行的程序。
4.面向程序员:程序员可以通过C语言访问硬件,操控内存中的位,并且C语言有丰富的运算符,大多数C实现都有一个大型的库,包含众多的C函数。
缺点:
- C语言使用指针,涉及 指针的编程错误往往难以察觉,必须时刻保持警惕
- 大量的运算符,可能会让 代码看起来很混乱
C语言的应用范围: 20世纪80年代,C语言成为小型计算机(UNIX)使用的主流语言,从那以后扩展到PC机和大型机,许多软件公司都使用C语言来开发产品,C可移植性高,移植到新型计算机中也没什么问题。20世纪90年代,许多公司开始使用C++,C++在C语言的基础上嫁接了面向对象的编程工具(面向对象编程是一门哲学,它通过对语言建模来适应问题,而不是对问题建模以适应语言)。
// 理解:对语言建模来适配所有问题,结果发明了厚厚的冗余层来适配问题,就是所谓的设计模式。为了解决这个新的问题,为此又开始构造更厚的中间层,也引入了新的手段,比如反射。
计算机的工作原理:
以计算机要完成两数相加为例:
CPU的小工作区域由若干个寄存器组成
- 从内存位置2000上把一个数字拷贝到寄存器1
- 从内存位置2004把另一个数字拷贝到寄存器2
- 寄存器2中的内容与寄存器1中的内容相加,并把结果存到寄存器1中
- 把寄存器1中的内容拷贝到内存位置2008
检索词条:
C语言设计特性
优点:高效、可移植(不同操作系统都可以使用C编译器)、灵活强大(其他语言的编译器、解释器,计算机最终通过C生成可执行程序)
缺点:指针、大量运算符
C的应用范围:小型计算机(UNIX)-> PC和大型机 ->面向对象C++
简单的工作原理:由寄存器完成
网友评论