&是逻辑语言,逻辑上表示两者属于缺一不可的关系,还可以表示一个人和另外一个人之意,与and同义。如A&B,表示A与B,A和B,A×B。在C语言程序引用的时候,只能在定义的时候被赋值。
a&=b就是a=a&b,a+=b是a=a+b。
A是指针类型,&是取地址符号,上式的意思表示为将B的地址赋给A,或A指向B。
例如:
int b = 1;int a & = b;
这个定义的意思就是给b取了一个别名叫a,所有对b的操作都是直接作用于a。
a&=b 即 a=a&b 其中&为位与运算。
int *a=NULL; //定义一个指针,此时a指向0x00000000。
int b=3; //定义一个int型变量,假设地址为0x00000100。
a=&b; //此时 a指向0x00000100。
&运用:
1、在HTML或SGML文档中,用于指明有字符存在(特殊字符)的默认符号。
2、在电子制表程序中,用于在描述单元格相互关系的公式中插入文本的操作符。
3、英文中代表and,也可读and。
4、该字符读音“z'da”。
5、&还有“联合”的意思。比如“A&B”公司,就是“A”和“B”两间公司合并起来的。
6、在某些电脑语言,如java中,表示按位进行“与”运算。
7、英文拼写:ampersand。
8、高级语言中的取地址符,如:“int a=0;int *p;p=&a;”,意为取变量a的地址给指针p。
9、C语言中两个&&表示“与”运算。
如:while(a==9&&b==5) 表示当a等于9且b等于5时,条件成立。
10、Matlab中,&表示“与”运算(对应地,|表示“或”运算),但Matlab较高版本(如:Matlab R2008b)中,也承认&&的写法。
在以上的意义中,以第3和第5项的用法最为普遍。
11、在vfp 数据库中,&是一个宏代换函数,用内在变量的值来代替&及变量名。
12、在Pascal中,&是八进制整型常量的前缀,如&7表示7 , &17表示15 , &177表示127 。
13、&还被大量引入到艺术创作与设计中。
14、bat中的命令,&之后顺序执行多条命令,不管命令是否成功。
15、在Visual Basic中使用命令按钮时,(&字母)代表将该字母设为快捷键。
如在命令按钮的Caption属性中输入“确定(&K)”则表示K为“确定”事件的快捷键
16、起标识作用。C++中引用的声明方法:类型标识符 &引用名=目标变量名,&在此不是求地址运算,而是起标识作用。
按位与运算符(&):
运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1;
即:两位同时为“1”,结果才为“1”,否则为0
例如:3&5 即 0000 0011& 0000 0101 = 00000001 因此,3&5的值得1。
另,负数按补码形式参加按位与运算。
“与运算”的特殊用途:
(1)清零。如果想将一个单元清零,即使其全部二进制位为0,只要与一个各位都为零的数值相与,结果为零。
(2)取一个数中指定位
参考资料:百度百科-& (逻辑语言)
参考资料:百度百科-C++
说明b是一个指针变量,其定义应该是这样:int *b,a;
*是取值运算符,*b就是取b指向存储空间的值;
&是取地址运算符,&a表示取变量a的地址。
*运算符后面应该跟指针;而&后面应该跟变量名(或数组元素,或结构体变量.成员名)。
例如 int *b;*b=&a;是错误的,正确的是int a=1;int *b=&a;意思是说定义一个指针b,b里存的是a这个变量的地址。如果定义好了一个这真b,那么*b就指b这个变量里存的地址里的值,&为取地址符,&a就是a这个变量的地址。
int a = 5;这是C语言中创建变量的语句,它内存中随机的一个地址上放了一个数5,我们怎么使用它呢,就是用字符a代表它。
int* b = &a;这是C语言中赋值地址的语句,其中int* 表示创建一个为b的整型地址变量,它所代表的就是某个整型数据的地址。
&a,这是取地址的语句,从上面可以知道,a代表的是5,可是a不是地址,那么a的地址该怎么表示呢,在a的前面加上字符&,也就是&a表示的是a的地址。
参考资料来源:百度百科-INT函数
a&=b表示的是:在C语言程序引用的时候,只能在定义的时候被赋值。
例如:
int b = 1;
int a & = b;
这个定义的意思就是给b取了一个别名叫a,所有对b的操作都是直接作用于a。
a&=b 即 a=a&b 其中&为位与运算。
扩展资料:
按位与运算符(&)
运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1;
即:两位同时为“1”,结果才为“1”,否则为0
例如:3&5 即 0000 0011& 0000 0101 = 00000001 因此,3&5的值得1。
另,负数按补码形式参加按位与运算。
“与运算”的特殊用途:
(1)清零。如果想将一个单元清零,即使其全部二进制位为0,只要与一个各位都为零的数值相与,结果为零。
(2)取一个数中指定位
参考资料来源:百度百科-& (逻辑语言)
如果要解释a&=b,那么答案就是a=a&b,不过这个你知道了。
那么,可能是你是不明白a&b的含义吧,否则还提什么问呢:)
a&b就是把a和b的二进制形式每一位数进行"与"运算,假如a为3、b的值为7,你知道a&b结果为多少吗,3&7的结果是3,知道怎么算的吗:
3的二进制是11,7的二进制是111,按位与的结果为3。
是不是很简单,你知道3&5的结果吗,标准答案是1,想明白了就好。
现在应该知道a&b的结果是整数类型,不是什么0呀1的、真呀假的。