c语言"a>>=1"是什么意思?

 我来答
机器1718
2022-11-16 · TA获得超过6795个赞
知道小有建树答主
回答量:2805
采纳率:99%
帮助的人:157万
展开全部

c语言"a>>=1"是什么意思?

a>>=1 等价于a=a>>1

表示将a右移一位,即,将低位抛弃,高位补零。

C语言是一门通用计算机程式语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低阶储存器、产生少量的机器码以及不需要任何执行环境支援便能执行的程式语言。

尽管C语言提供了许多低阶处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程式可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(微控制器或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)释出的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支援了汉字函式名和汉字识别符号,一定程度上实现了汉字程式设计。

c语言,a>>=1是什么意思。

对于非负整数a,它等同于:
a=a>>1;
也等同于:
a=a/2;

在C语言中"c=a>b?a:b;"这段程式码是什么意思?

如果a>b成立,则c=a;否则c=b

c语言 printf("%2u>",i+1)是什么意思?

%2u的意思是输出的结果总共占两位,按照不分正负的十进位制的形式输出,i+1是输出的结果

c语言 中的 >> 是什么意思 int r=8; printf("%d/n",r>>1);

“>>”是C语言中的位操作符,在谭浩强的《C程式设计》中第12章讲位运算的里面有讲到有关位操作的知识。“r>>1“ 按位向右移动1位,8的二进位制码:00001000右移后:00000100,记住是每一位都右移,如:a=163,二进位制:10100011,a>>2后:00101000,移位后超出的自动去掉。另外还有“<<"左移位,"&"按位与,"|"按位或,"^"按位异或,"~"按位取反等操作符,这些操作符主要是在某些需要对二进位制位进行操作的地方用到,很方便,比如某些时候你希望用一个二进位制位表示一个状态或者其它什么资讯时,把这些资讯用一个位储存起来(每个位代表一个资讯,节省空间,传输也方便,在上位机与下位机通讯时经常会用一个位元组的位来储存资讯),而这个时候的某些操作就需要进行位运算,它会给你的程式带来很多方便。
你可以看看书,谭浩强那本是不错的C入门书籍,刚看位操作时可能不太好明白,因为不知道它能干嘛,平时写程式也很少用到,我学这个的时候就是这样,几乎是随便看看就没管它了,后来到工作中偶然一个机会用到了它,那时才对这个位操作有了一点认识,所以程式设计的事还要多实践、多练习,在实践中体会、理解。

C语言 fprintf(fp,"File name: << %s >>.\n",infilename);是什么意思?

函式原型:int fprintf( FILE *stream, const char *format, ... );
fprintf()函式根据指定的format(格式)传送资讯(引数)到由stream(流)指定的档案。
此处即讲后面格式化的字串输入到指标fp所指定的档案中。

c语言 printf("%d\n" ++(*p->n)是什么意思呢?

显示指标p指向的结构体中n的值。并将该值增1。
n也是指标。

C语言 n>>=1 中的>>=是什么意思?

C语言 n>>=1 中的>>=意思是先将变数n的各个二进位制位顺序右移1位,最高位补二进位制0,然后将这个结果再复制给n。

"a-=a"是什么意思?(C语言)

把a减去本身后再赋值给a;
-= 是 “减赋值”运算子。
含义是:前面的变数减去后面的变数(或常量)的结果赋值给前面的变数。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式