C语言和C++的区别

来源:互联网 发布:阿里云域名咋续费 编辑:程序博客网 时间:2024/05/22 07:55

1.后缀不同


2.关键字不同

C语言:  C99有32个关键字


C++ :  C++98有63个关键字


3. C:面向过程

    C++:基于面向对象

   面向过程与面向对象的区别?

(1)面向过程

  C语言   eat()          ------>蛋炒饭(把所有要做的放在一起,无法做到饭与菜的分离,如果想改变菜会造成浪费)

  举个例子:

  开车走在C中这么想的,先分为几步:a.打开车门

                                                            b.关上车门

                                                            c.系上安全带

                                                            d.启动车辆

                                                            e.加速

(2)基于面向对象

  C++:dog.eat       ------->盖浇饭(做完菜,把菜浇上去,可以做到盖饭分离,可以直接换菜,减少浪费)

  同样是开车走,在C++中这么想的,分为两个部分:

                        a.人.      可以开车

                        b.车.      有车门,有安全带,有引擎 ,有发动机,有油门,有刹车

4.函数不同

(1)返回值不同

   C:FunTest---->默认返回int

   C++: FunTest---->不能通过编译,如果一个函数没有返回值则必须指定为void。  

      

(2)参数列表不同      

   C: void FunTest()---->传任意多个参数

   C++: void FunTest()---->没有参数,这里会利用缺省值(在我另外一篇博客中会讲到)   

(3)函数名字的修改

      举个例子:void FunTest(int a)

         C:           _FunTest

         C++:       ?FunTest@@YAXH@Z             

                        参数列表也加入名字修改当中,支持函数重载(在我另外一篇博客中会讲到) 

 


原创粉丝点击