记得有一次参加面试,主考官问我说:“你知道C语言和C++有什么不同吗?”我当时只说上来几点,比如C语言是面向过程的,C++在C语言的基础上增加了面向对象的机制;语法不同啊等等,说的都比较笼统,所以在这里我想系统的分析一下,C语言和C++有哪些不同和相同之处,以及它们各自的优越性。
一、应用场合
C语言:C语言是结构化和模块化的语言,是面向过程的。当程序的规模较小时,C语言运用起来得心应手。但是当问题比较复杂、程序的规模比较大的时候,C语言就会展现出它的局限性。
C++:正是因为有大规模的程序需要去处理,C++就应运而生了。C++是由C发展而来的,与C语言兼容。C++既可用于面向过程的结构化程序设计,也可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言。
与此看来,它们两者并两个孤立的个体,有着密切的连接关系。C++可以看做是C的超集,其实任何语言之间都没有明显的界限,C语言是基础,在此基础上所开发出来的所有语言都是在不同的场合发挥着它们独特的作用以及展示它们各自的优越性。
二、语法的不同之处
1、头文件
C语言:#include //标准输入、标准输出
**C语言中所有的头文件都带后缀 .h(比如stdio.h)
C++:#include//输入输出流所包含的头文件
using namespace std;//C++标准库中的类和函数是在命名空间std中声明的。
**C++中有系统提供的头文件不带后缀 .h,用户自己编制的头文件可以有后缀 .h。
2、输入/输出函数