C语言和C++语言的区别。
C编程语言
C语言是一种通用的高级语言,最初由Dennis M. Ritchie开发,用于在贝尔实验室开发UNIX操作系统。C语言最初于1972年在DEC PDP-11计算机上实现。
1978年,Brian Kernighan和Dennis Ritchie制作了第一个公开发布的C语言描述,现在被称为K&R标准。
UNIX操作系统、C编译器以及几乎所有UNIX应用程序都是用C语言编写的。C语言之所以被广泛用作专业语言,原因如下:
- 易于学习
- 结构化语言
- 生成高效的程序
- 可以处理底层活动
- 可以在各种计算机平台上编译
C++编程语言
C++是一种静态类型的、编译型的、通用的、区分大小写的、自由格式的编程语言,支持过程式编程、面向对象编程和泛型编程。
C++被认为是一种**中级**语言,因为它结合了高级和低级语言的特性。
C++由Bjarne Stroustrup于1979年在位于新泽西州默里山的贝尔实验室开始开发,作为C语言的增强版,最初命名为“带类的C”,后来在1983年更名为C++。
C++是C的超集,几乎所有合法的C程序都是合法的C++程序。
**注意** - 当类型检查在编译时而不是运行时执行时,据说编程语言使用静态类型。
面向对象编程
C++完全支持面向对象编程,包括面向对象开发的四大支柱:
- 封装
- 数据隐藏
- 继承
- 多态
区别
以下是C和C++之间的一些重要区别。
序号 | 关键点 | C | C++ |
---|---|---|---|
1 | 开发者 | C语言由Dennis Richie在1969-1973年间于AT&T贝尔实验室开发。 | C++由Bjarne Stroustrup于1979年开发。 |
2 | 面向对象编程(OOPS) | C语言不支持面向对象编程的概念,如多态性、封装和继承。 | C++是一种面向对象编程语言,支持面向对象编程的概念,如多态性、封装和继承。 |
3 | 集合关系 | C是C++的子集。 | C++是C的超集。所有C代码都可以在C++中运行,但反过来则不一定。 |
4 | 关键字 | C语言有32个关键字。 | C++有52个关键字。 |
5 | 过程式编程 vs 面向对象编程 | C语言是一种过程式编程语言。 | C++支持过程式编程和面向对象编程。 |
6 | 数据和函数 | 在C语言中,数据和函数是分开的。 | 在C++中,数据和函数作为对象封装在一起。 |
7 | 信息隐藏 | C语言不支持信息隐藏。 | C++通过封装支持信息隐藏。 |
8 | 重载 | C语言不支持函数和运算符重载。 | C++支持函数和运算符重载。 |
9 | 函数 | C语言是函数驱动的语言。 | C++是对象驱动的语言。 |
10 | 结构体 | C语言结构体不支持定义函数。 | C++结构体支持定义函数。 |
11 | 引用变量 | C语言不支持引用变量。 | C++支持引用变量。 |
12 | 虚函数和友元函数 | C语言不支持虚函数和友元函数。 | C++支持虚函数和友元函数。 |
13 | 异常处理 | C语言不支持异常处理。 | C++支持异常处理。 |
广告