C语言特点如下:
(1)语言简洁、紧凑、使用方便、灵活。C语言只有32个关键字,程序书写形式自由。
(2)丰富的运算符和数据类型。
(3)C语言可以直接访问内存地址,能进行位操作,使其能够胜任开发操作系统的工作。
(4)生成的目标代码质量高,程序运行效率高。
(5)可移植性好
程序语言的发展,总是从低级到高级,直到可以用人的自然语言来描述。可以看出,程序语言越低级,描写程序越复杂,指令越难懂。语言越低级,就越靠近机器,越高级,就越靠近人的表达与理解。
继承性和多态性的组合,可以轻易生成一系列虽类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。但由于多态性,一个对象可以有独特的表现方式,而对另一个对象有另一种表现方式。
C++中,每个函数对于程序的其他函数总是可见的。也就是说,任何函数都可以被包括它自己的所有函数所调用。由于main()启动和终止程序运行,所有main()函数通常第一个出现在程序中,而其他函数定义紧随其后。
左值是能出现在赋值表达式左边的表达式。
C++不允许函数定义嵌套,即在函数定义中再定义一个函数是非法的。
全局变量在主函数main()运行之前就开始存在了。所以主函数中可以访问n变量。全局变量通常在程序顶部定义。全局变量一旦定义后就在程序的任何地方可知。可以在程序中间的任何地方定义全局变量,但要在任何函数之外。全局变量定义之前的所有函数定义,不会知道该变量。
函数中的局部变量放在栈区。在函数开始运行时,局部变量在栈区被分配空间,函数退出时,局部变量随之消失。局部变量没有初始化。如果局部变量不被显示初始化,那么,其内容是不可预料的。
C++的函数调用过程,需要调用初始化和善后处理的环节。函数调用的整个过程就是栈空间操作的过程。函数调用时,C++首先:
(1)建立被调用函数的栈空间。
(2)保护调用函数的运行状态和返回地址。
(3)传递参数。
(4)将控制转交被调函数。
在局部变量前加上“static”关键字,就成了静态局部变量。静态局部变量存放在内存的全局数据区。函数结束时,静态局部变量不会消失,每次该函数调用时,也不会为其重新分配空间,它始终驻留在全局数据区,知道程序运行结束。静态局部变量的初始化与全局变量类似,如果不为其显示初始化,则C++自动为其初始化为0。
静态局部变量与全局变量共享全局数据区,但静态局部变量只在定义它的函数中可见。静态局部变量与局部变量在存储位置上不同,使得其存在的时限也不同,导致对这两者操作的运行结果也不同。
递归函数即自调用函数,在函数体内部直接或间接地自己调用自己,即函数的嵌套调用是函数本身。
虚函数:简单的说就是在基类中声明一个虚函数,