算法竞赛入门经典_C语言和C++比较

1.和C程序比较,stdio.h变成了cstdio。事实上,stdio.h仍然存在,但是C++中推荐的头文件是cstdio。类似地,string.h变成了cstring,math.h变成了 cmath,ctype.h变成了cctype。带.h后缀的头文件依然存在,但并不被C++所推荐使用。

C++能编译大多数C语言程序。虽然C语言中大多数头文件在C++中仍然 可以使用,但推荐的方法是在 C头文件之前加一个小写的c字母,然后去掉.h后缀

2.头文件不再是以字符c开头的,是C+ +特有的头文件。
如iostream提供了输入输出流,而algorithm提供了一些常用算 法,例如代码中的min()。

3.:using namespace std?
C++中有一个“名称空间”(namespace)的概念,用来缓解复杂程序的组织问题。

头文件iostream和algorithm里定义的内容放在std名称空间里。如果代码和该名称空间里的内容不重名,就可以用using namespace std的方法把std里的名字导入默认空间。这样就可以用cin代替std::cin,cout代替std::cout,min代替std::min了
C++中可以使用流简化输入输出操作。标准输入输出流在头文件iostream中定义,存在于名称空间std中。如果使用了using namespace std语句,则可以直接使用。

4.const声明
 声明数组时,数组大小可以使用const声明的常数。
在C++中,这种写法更为推荐, 而不是用#define声明常数。

5.bool型
C++中的数据类型和C语言很接近,最显著的区别是多了一个bool来表示布尔值,然后用true和false分别表示真和假。虽然仍然可以用int来表示真假,但是用bool可以 让程序更清晰。

6.&
如果在参数名之前加一个“&”符号,就表示这个参数按照传引用(byreference)的方式传递,而不是C语言里的传值(by value)方式传递。
7.C++中的引用就是变量的“别名”,它可以在一定程度上代替C中的指针。
8.C++提供了一个新的string类型,用来替代C语言中的字符数组。
9.结构体

C++除了支持结构体struct之外,还支持类class。
C++不再需要用typedef的方式定义一个struct,而且在struct里除了可以有变量(称为成员变量)之外还可以有函数(称为成员 函数)。

猜你喜欢

转载自blog.csdn.net/qq_38734403/article/details/80465398