thể Duplicates:
What does ‘: number’ after a struct field mean?
What does ‘unsigned temp:3’ meansSử dụng: nhà điều hành trong C
Xin chào tất cả mọi người, tôi ghét phải hỏi kiểu này câu hỏi, nhưng nó thực sự bugging tôi, vì vậy Tôi sẽ hỏi:
Chức năng của toán tử: trong mã bên dưới là gì?
#include <stdio.h>
struct microFields
{
unsigned int addr:9;
unsigned int cond:2;
unsigned int wr:1;
unsigned int rd:1;
unsigned int mar:1;
unsigned int alu:3;
unsigned int b:5;
unsigned int a:5;
unsigned int c:5;
};
union micro
{
unsigned int microCode;
microFields code;
};
int main(int argc, char* argv[])
{
micro test;
return 0;
}
Nếu bất cứ ai quan tâm gì cả, tôi kéo mã này từ liên kết dưới đây: http://www.cplusplus.com/forum/beginner/15843/
Tôi thực sự muốn biết vì tôi biết tôi đã nhìn thấy điều này trước khi nơi nào đó, và tôi muốn hiểu nó khi tôi nhìn thấy nó một lần nữa.
Cảm ơn!
Lưu ý rằng bố cục của các lĩnh vực bit là thực hiện được xác định, vì vậy kết quả của việc tiếp cận lĩnh vực bit trong một int thông qua một liên minh là không xác định. Đừng làm điều này trong mã sản xuất, sử dụng mặt nạ bit và thay vào đó thay đổi. – starblue