c++和c中的不同

1 对于带空参数列表的函数:

int func1();

在c中表示"一个可以带任意参数(任意数目,任意类型)的函数,但是这妨碍了类型检查,因此,在c++中,这只代表不带参数的函数

2 c强制在作用域的开始出定义变量,而c++可以再作用域的任意地方定义变量。因此可以再刚好需要某个变量的地方定义它。

3 c中函数可以未声明就可以调用,因为c编译器会猜测一个带有int参数的函数包含有int参数列表,尽管它可能实际上还包含float类型。但是c++在调用函数之前必须先声明。c中的方式会产生bug。

4 在c中可以将void*赋给任何指针,而在c++中是不可以的,c++进行类型检查。但是c++允许将任何类型的指针赋给void*。

原文地址:https://www.cnblogs.com/chaoguo1234/p/2988020.html