- C++可以不用在开头定义变量类型,C语言需要在头部定义。
- C语言无法获得register变量地址,C++可以取得register变量的地址。
- 在C语言中重复定义多个同名的全部局变量是合法的,在C++中不允许定义多个同名的全局变量。
- C++编译器对const常量,将其放入符号表中,遇到该常量则用符号值替换。编译过程中若对const 使用了extern 或者 & 操作符,则给对应的常量分配地址空间。C++编译器虽然可能给const常量分配空间,但不会使用其存储空间的值。 const变量的作用域只是定义的函数区域内,更加安全
#define 宏定义的作用域是整个程序, 在C语言中const 变量是只读变量,有自己的存储空间。
5. Struct 类型的加强
C语言的struct 定义了一组变量的集合,C编译器并不认为这是一种新的类型
C++中的struct 是一个新类型的定义声明
6.C++中变量必须要有类型
C语言默认的类型是int
7. Int f() 与 int f(void)区别
在C语言中
int f() :表示返回值为int,接受任意参数的函数
Int f(void) 表示返回值为int的无参函数
8. 在C++中
Int f() 和 int f(void) 具有相同的意义,都表示返回值为int 的无参函数