Ứng dụng dùng một số unsigned int để gom các cờ thông báo đang chờ xử lý — mỗi bit là một loại sự kiện. Bộ xử lý luôn lấy sự kiện có chỉ số bit thấp nhất ra phục vụ trước.
Viết chương trình in ra giá trị chỉ chứa bit 1 thấp nhất của n. Có một mẹo C kinh điển: n & -n (hoặc tương đương n & (~n + 1)), nhờ biểu diễn bù 2 của số âm.
Ví dụ: n=12=11002 → bit 1 thấp nhất là bit 2 → đáp án 01002=4.
Một số nguyên không dấu n (0≤n≤4,294,967,295).
Dùng unsigned int và biểu thức n & (~n + 1u).
Một số nguyên — giá trị n & -n (nếu n=0 thì in 0).
Ví dụ:
Đầu vào:
12
Đầu ra:
4
Giải thích:
Đang tải editor...