在C语言中b!2是什么意思,在C语言中b=a<<2;是什么意思?

2021-02-26 21:23:24 字数 5229 阅读 7097

1楼:叶子小宇

b不等于2,这是一个判断语句,返回布尔值(0或者1)

2楼:船长狙击手

一般这句是作为判断条件跟在if,which,for中的作为条件,其含义是(如果)b不等于2!

在c语言中b=a<<2;是什么意思?

3楼:大野瘦子

在c语言中,b=a<<2代表将a移位后的值赋值给b。

例如:100的二进制表示为1100100,100左移2位后,后面加2个零1100100<<2 =110010000 =400,

可以看出,a<因为在二进制数后面添加一个0就相当该数乘以2,2个零即2的2次方等于4。

4楼:

(a%b)是数学模运算,意思是取(a/b)的余数。a除以b的结果有两部分,一个是商,一个是余数,就跟我们做除法一样。计算机一般作整数除法a/b只能得到商,余数就用a%b得到,它是0到b-1中的一个值。

如果a/b能整除,a%b就是0。

!(a%b)是逻辑运算,只有a%b是0时为真(就当是1吧),a%b不为0时为假(就当是0吧)。

int a=30,b=8,a/b商为3,余6,所以a%b=6,!(a%b)为假,打印结果是0。

5楼:听不清啊

这就是要判断:

b是不是“小于或等于a”。

它只有两种可能,“是”或“不是”(通常用0或1表示)。

6楼:

a<<2 表示a 左移两位,数值上相当于a的十进制数乘以4 ,在把他的值赋给b

a<>n 数值上相当于a的十进制数除以2的n次方

7楼:飘零的狐狸

就是一个判断

判断b是不是小于等于a

如果是 值:非0

如果不是 值:0

8楼:匿名用户

说明b是一个指针变量,其定义应该是这样:int *b,a;

*是取值运算符,*b就是取b指向存储空间的值;

&是取地址运算符,&a表示取变量a的地址。

*运算符后面应该跟指针;而&后面应该跟变量名(或数组元素,或结构体变量.成员名)。

9楼:无聊所以无畏

++i在用于表达式中是先自加再参与运算,而i++先参与元算再自加比如说a*++i>b

就等价于i=i+1;a*i>b;

而a*i++>b

就等价于i=i+1;a*i>b;

10楼:匿名用户

c变量对2取余,然后取反。

如:c=3,则c%2=1,取反则等于0。

如:c=4,则c%2=0,取反则等于1。

明白了吗?

11楼:秋枫

*b=&a这种写法只有在定义时这么写才对

,例如 int *b;*b=&a;是错误的,正确的是int a=1;int *b=&a;意思是说定义一个指针b,b里存的是a这个变量的地址。如果定义好了一个这真b,那么*b就指b这个变量里存的地址里的值(有点绕口,慢慢理解),&为取地址符,&a就是a这个变量的地址。

12楼:育知同创教育

||在c语言中是指‘或’的意思 其判断是有一个为真 结果就为真

13楼:匿名用户

%=是取模 赋值 运算符,a%=4的意思就是a=a%4 ,%是取模运算符,

这2者差别在于%只进行计算并且运算顺序为从左到右。而%=则进行计算和赋值但是%=却没有运算顺序,因为它是先将a%=4拆成a=a%4后再进行计算,所以你觉得它该如何设置一个计算顺序呢?

所以对于4%4%3 我们知道是先进行4%4,得出结果后再把4%4的结果进行%3的操作

但是我们却无法确保a%=b%=4是如何操作的,所以不应当这样写**,也许他在一个操作系统上是先进行b%=4 然后再进行a%=b, 而在另一个系统上也许就先a%=b然后再用a%=4,或者就是a%=b然后进行b%=4,所以这串**应当是不可取的

14楼:懒洋洋紫研

%=是双目运算符,它的结合方向是自右至左.b%=4表示b=b%4(%左右两边均为整型数据),这个题先求b=b%4,然后再求a=a%

15楼:匿名用户

>的优先级大于!= ,所以他们的计算过程为:(a>b)然后!=c,a>b结果一般为bool值,为0或1,之后你就明白了吧。

16楼:陈鳌来了

a%=b%=4

等价于:b=b%4;

a=a%b;

17楼:匿名用户

左移2位

把b转换为二进制,然后向左移两位

比如5:00000101,左移两位为00010100

18楼:匿名用户

a<<2表示其二进制左移2位,也就是4a把4a赋给b

19楼:匿名用户

相当于

c语言中,a^b是什么意思?

20楼:匿名用户

^按位异或,

例如#include

int main()

输出结果是8;

1010//10

0010//2

——^1000//8

21楼:夜風輕吹

位运算:按位异或运算符

看运算符左右值的二进制数字,一一对应,若相同(即:1-1或者0-0)就为0若不同(1-0或者0-1)则为1

结果得到的二进制就是结果

22楼:匿名用户

a的b次方

如2^3就是2的3次方,就是8

在c语言中b=a<<2;是什么意思?

23楼:赖在圈里

a<b=a<<2代表将a移位后的值赋值给b

(例如100的二进制表示为1100100,100左移2位后(后面加2个零):1100100<<2 =110010000 =400,可以看出,a<定义一些常量可能会用到《运算。你可以方便的用1<<16 -1 来表示65535(unsingned int 最大值16位系统)。

很多算法和数据结构要求数据模块必须是2的幂,此时就可以用《来定义max_n等常量。)

引自网页链接 第三段

24楼:听不清啊

就是把 a 左移2位,相当于把a乘以2的2次方

b=a*4

在c语言中,b++=2是什么意思。请知者告知。

25楼:匿名用户

这是一个错误表达式,表达式不能作为左值

26楼:匿名用户

b++ 是b=b+1的意思

b+=2 是b=b+2的意思

你的那种写法是错误的

27楼:飞天失忆猪

运行了一下,语法错误

28楼:匿名用户

这是c语言考试里的一道题,答案是1,3,3,其实是这样的先判断b是否等于2,然后再执行b++

c语言中 b++=2什么意思

29楼:a罗网天下

b++==2在c语言中判断b是否等于2后b自加。

在c语言中a++是首先拷贝自己的副本,然后对真值加一++a是对真值加一,然后使用真值。

例如:int a=0, b, c;

b = a++;

c = ++a;

printf("b=%d, c=%d", b, c);

上述程序段运行结果为b=0,c=2,可以证明理论

而a++和++a本身在单独使用时,与a=a+1是等价的。

c语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在c语言标准中,并没有结合性的说法。

相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。

而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)合理使用优先级可以极大简化表达式。

基本表达式(primary expressions),主要是用于运算符之间,做为运算数。

标识,常量,字符串文字量,优先级提升表达式最优先执行。优先级提升表达式是指圆括号包围的表达式,如“( expression )”

30楼:徜逸

语法错误。

b++的意思为b自加,即为b=b+1,b=2的意思为b赋值为2,但两者结合错误。可尝试以下写法:

1、++b=2

意思为:b自加后将b赋值为2。

2、b++==2

意思为:判断b是否等于2后b自加。

扩展资料b++和++b的区别

运算优先级不同:++b的优先级大于b++的优先级。

发展历史

c语言诞生于美国的贝尔实验室,由d.m.ritchie以b语言为基础发展而来,在它的主体设计完成后,thompson和ritchie用它完全重写了unix,且随着unix的发展,c语言也得到了不断的完善。

为了利于c语言的全面推广,许多专家学者和硬件厂商联合组成了c语言标准委员会,并在之后的1989年,诞生了第一个完备的c标准,简称“c89”,也就是“ansi c”,目前,最新的c语言标准为2011年发布的 “c11”。

31楼:匿名用户

这样不行的,b++是右值,不能放等号的左边根据你补充的继续回答,看以下**就一目了然了int b = 0;

int c = (b++ == 2);

printf("%d %d\n", b, c);

此**输出的是1 0

意思就是,首先判断b是否等于2,显然不是,因此c为假 = 0,然后b++,得到1。不懂继续追问

32楼:匿名用户

c语言里面没有连续的三个运算符同时出现的情况吧

33楼:k高人

b==2//判断是否等于2

b++==2//判断b是否等于2,判断完后无论是否相等,都给b加1

34楼:hello我爱娃娃

b+1=。。。直到等于2结束。

在C语言中“a b”是什么意思,c语言中,a^b是什么意思?

1楼 匿名用户 a 异或 b 按位异或 比如 a 为 5 0101 b 为 7 0111 0010 对应位相同为0, 不同为1 希望对你有帮助。谢谢 c语言中,a b是什么意思? 2楼 匿名用户 按位异或, 例如 include int main 输出结果是8 1010 10 0010 2 1000...

(a+ba b在c语言中什么意思

1楼 !是逻辑非运算 是逻辑与运算 是乘法运算 根据运算符优先级考虑 先求 a b ,然后求 a b 再求a b 最后算逻辑与 2楼 匿名用户 优先级最高,!第二, 第三 第四所以先算a b 然后将a b的值! 然后算a b 再然后将 a b 与 a b 的值 3楼 匿名用户 去查c语言的运算优先级...

c语言中sk是什么意思,c语言中 k*=2 是什么意思

1楼 匿名用户 相当于 s k,取结构体中k的值 2楼 匿名用户 struct studentstu s stu k s k s是指向结构体的指针 3楼 发烧友eri画家 s是结构体指针,指向结构体中的变量k 也就是k的值 c语言中s k是什么意思 4楼 匿名用户 就是s s k的意思就是把s的值加...