首页 百科知识 运算符的操作数必须是变量吗

运算符的操作数必须是变量吗

时间:2022-10-16 百科知识 版权反馈
【摘要】:&和*运算符都是单目运算符。&运算符用来取出其操作数的地址;*运算符是&的逆运算,它将操作数所指向的内存单元中的内容取出来。将变量或表达式的值强制转换成数据类型名所指定的类型的值。它们的优先级在所有运算符中是最高的。

2.4.8 其他运算符

C语言中还有另外几个运算符(本节仅简单介绍,在后面相应的章节中详细说明)。

1)& 和 *

&和*运算符都是单目运算符。&运算符用来取出其操作数的地址;*运算符是&的逆运算,它将操作数(即指针量)所指向的内存单元中的内容取出来。例如:

img74

有关指针的详细内容,详见第5章。

2)sizeof

sizeof也是单目运算符,用来计算某种类型的数据所占用的字节数。例如:

  sizeof(float)

它的值为4,表示float类型的1个数据占用4个字节。

sizeof运算符的实参可以是数据类型,也可以是某种数据类型的变量或表达式;sizeof也常用来计算数组或结构所需空间大小,以便进行动态存储空间的分配。

3)强制类型转换运算符( )

强制类型转换运算符是单目运算符,一般使用形式为

(数据类型名) 变量 或  (数据类型名) (表达式)

将变量或表达式的值强制转换成数据类型名所指定的类型的值。例如,变量dou原来定义的类型是double型,那么表达式

  (int) dou

的值为变量dou的值转换成的int型的值;但变量dou本身的类型和值不变。

例如,若

int num ;

double dou=12.4;

执行

num=(int) dou ;

后,num为12;dou仍然为12.4。

4)基本运算符

C语言中有4个基本运算符:

  [ ]  ( ) −> .

其中,[ ]用于数组下标的表示;( )用于标识函数;−>和.用于存取结构或联合中的成员。它们的优先级在所有运算符中是最高的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈