Menentukan Nilai Bit Tanpa Manipulasi Bit
Dalam pengaturcaraan, selalunya perlu untuk menyemak nilai bit tertentu dalam pembolehubah integer tanpa menggunakan peralihan bit atau masking. Ini amat berguna dalam senario di mana kelajuan atau kesederhanaan diutamakan.
Pertimbangkan contoh berikut dalam C/C :
int temp = 0x5E; // binary: 0b1011110
Untuk menentukan sama ada bit 3 dalam temp ialah 1 atau 0 tanpa menggunakan operasi bit, makro boleh digunakan dalam C:
#define CHECK_BIT(var, pos) ((var) & (1 << (pos)))
Menggunakan makro ini, nilai nth bit dari hujung kanan boleh disemak:
CHECK_BIT(temp, n - 1)
Dalam C , pendekatan alternatif ialah menggunakan kelas std::bitset:
std::bitset<8> bits(temp); bool bit3_set = bits[3];
Teknik ini menyediakan cara ringkas untuk mengakses dan memanipulasi bit dalam pembolehubah integer.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak Nilai Bit dalam Integer Tanpa Operator Bitwise?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!