Trong khi tìm cách viết hàm chuyển số thập phân sang IEEE thì em có đọc tham khảo về phần khai báo struct sử dụng bit fields. Nhưng khi mày mò một lát thì lại không hiểu lắm, cụ thể trong code thì kết quả in ra là -7 ( 1001 chuyển qua thập phân là -7 thì khá hợp lí ) và 121 ( cái này em đang rối ) . Các anh có thể giải thích hộ em được không ạ ! Cảm ơn mấy anh nhiều .
struct bitFields
{
int bit_0 : 1;
int bit_1_to_4 : 4;
int bit_5 : 1;
int bit_6_to_13 : 8;
};
int _tmain(int argc, _TCHAR* argv[])
{
bitFields a;
a.bit_1_to_4 = 1001;
a.bit_6_to_13 = 10011001;
printf("%d\n",a.bit_1_to_4);
printf("%d\n",a.bit_6_to_13);
return 0;
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?