thể trùng lặp:
What does this C++ code mean?'Nhiệt độ chưa được ký: 3' trong cấu trúc hoặc công đoàn nghĩa là gì?
Tôi đang cố gắng để ánh xạ một cấu trúc C đến Java sử dụng JNA. Tôi bắt gặp một thứ mà tôi chưa bao giờ thấy.
Định nghĩa struct
là như sau:
struct op
{
unsigned op_type:9; //---> what does this mean?
unsigned op_opt:1;
unsigned op_latefree:1;
unsigned op_latefreed:1;
unsigned op_attached:1;
unsigned op_spare:3;
U8 op_flags;
U8 op_private;
};
Bạn có thể thấy một số biến được định nghĩa như thế unsigned op_attached:1
và tôi không chắc chắn những gì sẽ có nghĩa là gì. Điều đó có ảnh hưởng đến số lượng byte được phân bổ cho biến cụ thể này không?
Chà, điều đó hoàn toàn mới đối với tôi. Nice tìm! –
Đã thêm 'dấu hai chấm' để giúp nó xuất hiện trong tìm kiếm. –
Điều tốt nhất bạn có thể làm với các trường bit là tránh chúng. Sử dụng mặt nạ và dịch chuyển tốt hơn để truy cập các nhóm bit theo các số nguyên theo cách được xác định rõ. – starblue