我很困惑,這是什麼做的:結構初始化無與倫比的變量
#define AIR_LP 1
tw_lptype airport_lps[] = {
{
AIR_LP, sizeof(Airport_State),
(init_f) Airport_StartUp,
(event_f) Airport_EventHandler,
(revent_f) Airport_RC_EventHandler,
(final_f) Airport_Statistics_CollectStats,
(statecp_f) NULL
},
{ 0 },
};
和
struct tw_lptype
{
init_f init;
event_f event;
revent_f revent;
final_f final;
map_f map;
size_t state_sz;
};
我想我得到通過在結構聲明AIR_LP和sizeof前兩個變量混淆(Airport_state),我知道所有其他人都在做什麼,所以如果有人可以給我一些信息,說明這兩部分將會如何。
結構末尾還有一個未初始化的額外字段,並且最後一個字段的初始化爲錯誤的類型。在結構的定義周圍是否有條件編譯(即'#ifdef'類似)? – 2012-04-04 06:03:23