网站地图
hnsjyk999.com
三九百科 包罗万象
>> 发布于:

>>可表示远大于符号、许多编程语言中的运算符和一种操作符。

在数学公式中,“>>”代表远大于符号,表示一个数远大于另一个数,如76>>3,-2>>-99等。庞加莱与波莱尔1901年首先使用了它,很快被数学界所接受,并沿用至今。

在许多计算机编程语言(例如:C语言、C++语言、Java语言、JavaScript语言、Pascal语言等)中,“>>”代表右移运算符,就相当于“shr”。该运算符为双目运算符,结合方向为从左到右,作用是把一个整型数的所有位向右移动指定的位数,移动到右边界之外的多余二进制位会被丢弃,并从左边界移入一个二进制位,若原数的最高位为1,则移入的二进制位为1,否则为0。

右移运算的两个操作数应为整数类型。第一个操作数是要进行移位操作的数,第二个操作数指定第一个操作数移动的位数。如果第二个操作数等于0则不发生任何移位。

应用举例:

问:计算表达式14 >> 2的值。

答:表达式14 >> 2的值为3,因为14(即二进制的00001110)向右移两位等于3(即二进制的00000011)。

说白了,就是把要移动的数转换成2进制,右移几位就去掉右边的几位数,左移几位就在右边加几个0,比如14右移2位就是转成二进制变成1110,去掉右边的10,变成11,11转成十进制就是3;左移2位就是111000,转成十进制就是56。

在C++里面我们把>>当作输入操作符,它是stream这个类里一个重要的运算符。

在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符:

析取器(>>)

从流中输入数据。比如说系统有一个默认的标准输入流(cin),一般情况下就是指的键盘,所以,cin>>x;就表示从标准输入流中读取一个指定类型(即变量x的类型)的数据。从左操作数指定的输入流读入数据到右操作数:cin >> i 把标准输入流中的下一个值读入到i中。

和其他的函数没有什么区别。C/C++追求的就是简洁,当大量的输入需要处理的时候,我们用函数就要这样,scanf("%d%d%d",&a,&b,&c);(假设为短整型)

.....但是用操作符的话就可以这样,cin>>a>>b>>c

字符是可使用多种不同字符方案或代码页来表示的抽象实体。例如,Unicode UTF-16 编码将字符表示为 16 位整数序列,而 Unicode UTF-8 编码则将相同的字符表示为 8 位字节序列。公共语言运行库使用 Unicode UTF-16(Unicode 转换格式,16 位编码形式)表示字符。

举例:$array[0] = ($str >> 16 & 0xff);

表示把字符串$str转换为Unicode 16位的编码,然后存储到数组中。常见的UTF-8编码方式就是把例子中的16改成了8,表示Unicode编码,16位字符。


相关文章推荐:
C语言 | C++ | JavaScript | Pascal | shr | 二进制 |