C语言和C++语言在语法上面的部分区别

C语言和C++语言在语法上面的部分区别:
1
C语言的定义必须在最前面,C++可以在任何地方定义,比如
for(int i=0;i<100;i++) s+=i;
C++中是正确的,但是在C语言中是错误的
2
、类型强制转换,C语言必须将类型括起来,C++可以将变量括起来。比如int(a)C++中是正确的,但是在C语言中是错误的,必须写为(int)a
3
、在VC中,int32位的;在tc中,int16位的。VC支持C++语法
                                                
共享群里面的上机手册中建立的文件test.cpp.
各位老师在具体作的时候可以建立.C文件取代.cpp文件。
这样子可以避免很多CC++的区别。例如:
变量声明的位置等都和TC中的语法一样了。

C++ C 语言的超集,虽然 C++ 兼容 C ,但是 C++ 中也有与C语言中不兼容的地方。
一、变量声明的位置
    C
中变量声明和代码是分开的,必须在函数开始处声明;
    C++
中,变量可以在任意处声明,只要保证先声名后使用的原则就可以。
二、 struct 结构体方面
   1
、用 struct 定义变量
   struct mystruct
   { int i;
     float x;
   }
  
c 中声明 struct 变量要这么写: struct mystruct a;
  
C++ 中前面不用加 struct mystruct a;
  
一种兼容的用法是:
  typedef struct _mystruct
          {
     int i;
            float x;
   } mystruct;
  
然后用 mystruct 定义变量。枚举型 (enum), 联合体类型 (union) 也是同样。
   2
、在 C++ 中, struct 结构体支持成员函数的定义, C 中不行。另外要注意的是, C++ 中成员函数的默认访问说明符为 public, 这一点和类不同,类的默认访问说明符为 private.
三、 bool 类型值
    C++
中有 bool( boolean 类型 );C 中可没有这样的 bool 类型,均为数值类型!需要注意的是真为非零 ( 如:1,52, - 5, - 2等 ) ,假的数值为0。
四、注释的不同
    C
中的注释至有一种 ;
    C++
中的注释包含两种和 //
五、强制数据类型转换
  C中的强制转化形式为: ( 类型 ) 变量;
C++ 中还可以使用 : 类型 ( 变量 ) 的形式。
六、赋值
    C
语言中的赋值只有一中即: =;
    C++
中除了使用 = 外,还可以使用 () 。例如: int  x(5) ;就等于 : int x=5; 我想这种写法是给 C++ 中对象初始化时初始化属性是对象时使用的,那么对于基本类型也可以使用了。
七、函数
    1
、C语言中函数没有参数默认值,在 C++ 中函数有参数默认值的概念,注意参数默认值与函数重载的区别。
    2
C 语言中函数的定义有两种形式,经典形式和标准形式, C++ 中只支持标准形式。
   
标准形式: int string(int x,float y){......}
   
经典形式 :  int string(x,y)int x;float y;{......}
   3 C++ 的函数必须先声名原型或定义才能使用 , 因为 C++ 是强数据类型语言 , C 语言中 , 未声名和定义函数之前调用函数是允许的 .
八、运算符 & 和关键字 const
   & 运算符最基本的含义是取地址, C 和C ++ 中都支持这一语法。但在 C++ & 还可以表示引用。有了引用的概念后函数调用可以作为左值。例如:
    int &rtux()
    {
      ......
      }
    rtux()=5;

   
以上表达式在 C++ 中完全正确,但在 C 语言中是非法的。
    const
关键字要注意一点不同的就是在 C++ 的类函数中,函数可以声名是可以用 const ,表示这个函数没有改变类中的任何属性。如: voidunchange()const;C 不能有这样的生明。
九、 extern 说明符
   
C 语言的某些版本中,可以在程序中多次使用一个全局变量而无需使用 extern 说明符。但在 C++ 中除定义全局变量外,在其他模块使用应先用 extern 生明。
十、 void 指针
   
C 语言中 void 指针可以赋给任何类型的指针,但在 C++ 中,却不行,但可以先进行强制数据类型转换,在赋值。
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值