*代表指针运算符和乘法运算符;&代表取地址,与运算符,引用符。
用于二目运算中的按位(位运算)与运算:
单目是只需要一个操作数的意思,比如:a++ a-- *a &a
双目是需要两个操作数的意思,比如:a+b a-b a*b a/b a%b
三目是需要三个操作数的意思,比如:a=c>b?c:b;
例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二进制补码) 00000001 (1的二进制补码)可见9&5=1。
按位与运算通常用来对某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 运算 ( 255 的二进制数为0000000011111111)。
扩展资料
运算符的使用
1、当需要初始化指针,以指向某些对象或函数时,需要获得这些对象或函数的地址:
floatx,*ptr;
ptr=&x;//合法:使得指针ptr指向x
ptr=&(x+1);//错误:(x+1)不是一个左值
2、当已具有一个指针,并且希望获取它所引用的对象时,使用间接运算符*(indirectionoperator),有时候这会被称为解引用运算符(dereferencingoperator)。它的操作数必须是指针类型。如果ptr是指针,那么*ptr就是ptr所指向的对象或函数。如果ptr是一个对象指针,那么*ptr就是一个左值,可以把它(即*ptr)当作赋值运算符左边的操作数:
floatx,*ptr=&x;
*ptr=1.7;//将1.7赋值给变量x
++(*ptr);//并将变量x的值加1
参考资料来源:百度百科—运算符