您当前的位置:首页 > 计算机 > 编程开发 > C语言

对不同类型的C语言变量进行算术运算会有问题吗?

时间:12-30来源:作者:点击数:

C有三类固有的数据类型:指针类型、整数类型和浮点类型。

指针类型的运算限制最严,只限于以下两种运算:
     -  两个指针相减,仅在两个指针指向同一数组中的元素时有效。运算结果与对应于两个指针的数组下标相减的结果相同。
     +  指针和整数类型相加。运算结果为一个指针,该指针与原指针之间相距n个元素,n就是与原指针相加的整数。

浮点类型包括float,double和longdouble这三种固有类型。整数类型包括char,unsigned char,short,unsigned short,int,unsigned int,long和unsigned long。对这些类型都可进行以下4种算术运算:
    +  加   
    -  减
    *  乘   
    /  除

对整数类型不仅可以进行上述4种运算,还可进行以下几种运算:
    %    取模或求余
    >>    右移
    <<    左移
    &    按位与
    |    按位或
    ^    按位异或
    !    逻辑非
    ~    取反

尽管C允许你使用“混合模式”的表达式(包含不同类型的算术表达式),但是,在进行运算之前,它会把不同的类型转换成同一类型(前面提到的指针运算除外)。这种自动转换类型的过程被称为“运算符升级(operator promotion)”。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门