>>可表示遠大於符號、許多程式語言中的運算符和一種操作符。
基本介紹
- 中文名:遠大於符號
- 外文名:Far greater than symbols
- 符號:>>
- 出現時間:1901年
遠大於符號,右移運算符,輸入操作符,轉換運算符,
遠大於符號
在數學公式中,“>>”代表遠大於符號,表示一個數遠大於另一個數,如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位字元。