0
我正在閱讀Mach Ports的代碼,我想知道一段代碼的範例。我的意思是我知道Objective-C的結構的語法,但我不知道什麼語法message.header = (mach_msg_header_t) {......};
這個代碼在Objective-C或C語言中的規則語法是什麼?
完整的代碼如下。
natural_t data;
mach_port_t port;
struct {
mach_msg_header_t header;
mach_msg_body_t body;
mach_msg_type_descriptor_t type;
} message;
message.header = (mach_msg_header_t) {
.msgh_remote_port = port,
.msgh_local_port = MACH_PORT_NULL,
.msgh_bits = MACH_MSGH_BITS(MACH_MSG_TYPE_COPY_SEND, 0),
.msgh_size = sizeof(message)
};
'(mach_msg_header_t)'是類型轉換。 –
@KlasLindbäck謝謝,但我知道這是一個類型演員。所以我想知道代碼(mach_msg_header_t){ .msgh_remote_port = port, .....};是一個函數?或結構?和「.msgh_remote_port」是什麼意思?我很困惑。 –
它似乎是結構字段分配。 'mach_msg_header_t'結構具有名爲'msgh_remote_port','msgh_local_port'等字段。 –