为您找到"
c语言中a&(a-1)=?,这句话是什么意思,想干什么,在哪能用
"相关结果约100,000,000个
这个是删除一个bit,每次a&(a-1)的结果会比a的二进制少一个bit,用个循环操作就可以算出有a多少个bit了
在C语言中,非零则是真,零为假。现在a&&(-1),-1表示为真,则只有a为0时b=0;a不为0时,b=1。
在C语言中可能表示两种运算符。1、如果运算对象只有一个,且为右操作数,那么为取地址运算符,结果为操作对象的地址。例如a(假设a是一个左值,即具有具体的可访问的地址)结果为a的地址。2、如果运算对象有两个,那么表示位与运算。结果中的每一个二进制位等于两个运算数的对应位置的二进制位按位与...
这个是根据优先级来算的,其中括号优先级最大先算括号里面的也就是a-1,然后是单目运算符~按位取反也就是对a-1的值按位取反,最后是&按位与运算符也就是a和前面取反的值进行与位运算。
c语言中&有两种意思,一种是取地址符,是单目运算符;另一种是位运算符,表示“按位与”,是双目运算符。C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。一、何为c语言 C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的...
关于楼上的-1为什么为真 我开解释一下 ,因为在C语言中负数是以补码形式存储的最高位是符号位 最高位0为正1为负,所以如果是负数的话最高位肯定是1,那么-1就为真。
~1就是对1求反 1可以是0000 0001 对1求反就是1111 1110 然后将a与1111 1110进行'&(与)‘运算(同为1,则为1,否则为0)假如a是7(0000 0111)那么0000 0111 & 1111 1110 得到 0000 0110 就可以看到a这个数的最低为变成0了
1、&符号是指取地址符,是单目运算符。当你定义一个变量a,那想知道变量在内存中的地址,就可以使用这个符号。这个符号就是指取址,在C语言指针这一章中非常常用。2、&符号是位运算符,表示“按位与”,是双目运算符。&符号还可以表示“按位与”。在计算地址的时候,都是二进制数了,如果两个...
&是取地址,scanf读取变量的时候,参数需要的是变量的实际内存地址,了解C语言指针的概念后就会明白,地址就是指针,指向变量的数据内容。不过一般%s是不会用&取地址的,因为字符串类型本身就是指针,不需要再进一步取地址。