&在C语言中是什么意思
18个回答
展开全部
通常我们说话是加&表示“与”,比如Jake
&
Tom,C语言里&较为基础的一个使用就是“按位与”,它用在数据与数据之间进行运算(注意,它与【逻辑与】“&&”不同),比如十六进制a=0x10&0x01=0x00,而逻辑与的结果则是a=0x10&&0x01=1(TRUE);
第二个就是作为取地址符,这时候他用于数据的前面,比如int
a=&b;
C++里还使用&作为引用符,如果你确认程序是标准的C而非C++的话,那么可以排除是引用了。引用也用于数据前面,它只在定义和声明时使用,如int
&othername=name;
int
&a=b;
//定义时使用在等号左侧,是引用
int
*a=&b;
//在等号右侧,并单独在数据之前,是取地址
int
a=(&b)
&
0xffff;
//第一个&是用于取b的内存中的地址,第二个&是按位与,即保留b地址值的低16位,高16位数值被清零(32位处理器下).
&
Tom,C语言里&较为基础的一个使用就是“按位与”,它用在数据与数据之间进行运算(注意,它与【逻辑与】“&&”不同),比如十六进制a=0x10&0x01=0x00,而逻辑与的结果则是a=0x10&&0x01=1(TRUE);
第二个就是作为取地址符,这时候他用于数据的前面,比如int
a=&b;
C++里还使用&作为引用符,如果你确认程序是标准的C而非C++的话,那么可以排除是引用了。引用也用于数据前面,它只在定义和声明时使用,如int
&othername=name;
int
&a=b;
//定义时使用在等号左侧,是引用
int
*a=&b;
//在等号右侧,并单独在数据之前,是取地址
int
a=(&b)
&
0xffff;
//第一个&是用于取b的内存中的地址,第二个&是按位与,即保留b地址值的低16位,高16位数值被清零(32位处理器下).
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
通常我们说话是加&表示“与”,比如jake
&
tom,c语言里&较为基础的一个使用就是“按位与”,它用在数据与数据之间进行运算(注意,它与【逻辑与】“&&”不同),比如十六进制a=0x10&0x01=0x00,而逻辑与的结果则是a=0x10&&0x01=1(true);
第二个就是作为取地址符,这时候他用于数据的前面,比如int
a=&b;
c++里还使用&作为引用符,如果你确认程序是标准的c而非c++的话,那么可以排除是引用了。引用也用于数据前面,它只在定义和声明时使用,如int
&othername=name;
int
&a=b;
//定义时使用在等号左侧,是引用
int
*a=&b;
//在等号右侧,并单独在数据之前,是取地址
int
a=(&b)
&
0xffff;
//第一个&是用于取b的内存中的地址,第二个&是按位与,即保留b地址值的低16位,高16位数值被清零(32位处理器下).
&
tom,c语言里&较为基础的一个使用就是“按位与”,它用在数据与数据之间进行运算(注意,它与【逻辑与】“&&”不同),比如十六进制a=0x10&0x01=0x00,而逻辑与的结果则是a=0x10&&0x01=1(true);
第二个就是作为取地址符,这时候他用于数据的前面,比如int
a=&b;
c++里还使用&作为引用符,如果你确认程序是标准的c而非c++的话,那么可以排除是引用了。引用也用于数据前面,它只在定义和声明时使用,如int
&othername=name;
int
&a=b;
//定义时使用在等号左侧,是引用
int
*a=&b;
//在等号右侧,并单独在数据之前,是取地址
int
a=(&b)
&
0xffff;
//第一个&是用于取b的内存中的地址,第二个&是按位与,即保留b地址值的低16位,高16位数值被清零(32位处理器下).
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
&是一个取地址符。比如:scanf("%d",&a);表示的就是将我们输入的值传递到a的地址,然后函数中也有这样的用法,比如
s=
a(&b);表示的是S等于a这个函数返还的值,同时a调用了b的地址。这是用在指针里的。
s=
a(&b);表示的是S等于a这个函数返还的值,同时a调用了b的地址。这是用在指针里的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按位取反的意思,比如a=1100,b=~a;那么b=0011;你得把~和!区分开。!是逻辑取反,例如a=0011,由于a不等于0,所以a在逻辑上是1,b=!a,则b=0;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询