C语言是一种最为基础的语言,它是C++的基础。
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言是一种面向过程的语言。注重对一件事情的解决过程,解决步骤,就例如是一个新生婴儿,刚刚进入世界时,什么技能都没有,只有在后天的影响下才能拥有走、跑、跳、语言等等技能,通过这些技能进行改变人的一些东西。而C++是一种基于面向对象的一种语言。至于为什么说是基于面向对象的是因为C++需要向下兼容C语言,注重的是对象本身,将一件事情拆分成不同的对象,通过对象之间的交互完成一件事。定义了一个对象,这个对象就拥有了一些技能,就如是一个已经有一定社会经验的人,已经拥有了一定的技能,基本上无需后天的学习。
原因是:C语言在结构体中只能定义成员变量,不能定义成员函数,因此当定义了一个结构体时,并且定义了一个对象,就不能赋予该对象技能,只能在结构体外定义函数,传进对象参数,使对象改变。由于C语言的结构体只能定义成员变量,在一定情况下制约了C的发展,因此C++在C语言的基础上进行了改变,在结构体(类)中既可以定义成员变量,还可以定义成员函数。对成员中的变量、函数还可以进行访问权限的设定。
注意:C++中定义类,既可以使用struct定义,也可以用class定义,只不过class默认成员为私有的,struct默认成员是公有的