Rumah >pembangunan bahagian belakang >C++ >Penggunaan << dan >> dalam bahasa c

Penggunaan << dan >> dalam bahasa c

下次还敢
下次还敢asal
2024-04-27 23:12:501173semak imbas

Dalam bahasa C, > ialah operator anjakan bit, digunakan untuk menjalankan operasi bit pada pembolehubah integer: >: Operator anjakan kanan, yang menggerakkan perwakilan perduaan operan ke kanan dengan bilangan digit yang ditentukan, yang bersamaan dengan pembahagian dengan kuasa 2. Anjakan kanan yang ditandatangani (>>) mengekalkan bit tanda, manakala anjakan kanan yang tidak ditandatangani (>>>) mengisi bit kosong dengan sifar.

Penggunaan << dan >> dalam bahasa c

usage of & lt; & lt; .

Pengendali anjakan kiri (

int x = 5; // 二进制表示:00000000 00000101
int y = x 

operator anjakan kanan (>>)

operator mengalihkan perwakilan binari operan ke kanan dengan bilangan digit yang ditentukan, bersamaan dengan operasi pembahagian asas 2. Ia juga boleh dibahagikan kepada anjakan kanan yang ditandatangani (>>) dan anjakan kanan yang tidak ditandatangani (>>>).

Anjakan kanan yang ditandatangani (>>):
    akan mengekalkan bit tanda operan dan mengisi bit tanda kiri ke dalam bit yang kosong. Contohnya:
  • int x = -5; // 二进制表示:11111111 11111011
    int y = x >> 2; // y 的二进制表示:11111111 11111100
    // 等价于:y = x / 2^2 = -5 / 4 = -2
Anjakan kanan yang tidak ditandatangani (>>>):
    akan mengisi bit yang kosong dengan 0, dan bit tanda tidak akan dikekalkan. Contohnya:
  • int x = 5; // 二进制表示:00000000 00000101
    int y = x >>> 2; // y 的二进制表示:00000000 00000001
    // 等价于:y = x / 2^2 = 5 / 4 = 1
  • Senario aplikasi

Pengendali anjakan mempunyai pelbagai senario aplikasi, termasuk:

Operasi medan bit

    Mampatan data dan
  • pengoptimuman
  • isasi

Atas ialah kandungan terperinci Penggunaan << dan >> dalam bahasa c. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn