2010-06-26 226 views
0

如果其他結構可以初始化結構嗎?例如:我有結構:初始化其他結構的結構

typedef struct _JobParam 
{ 
    MainWin* mw; 
}JobParam; 

其中MainWin結構也是如此。

在主代碼我有功能:

能否使初始化結構或這是錯的呢?

void load (MainWin* mw) 
{ 
    Param param; 
    param.mw = mw; 
} 

謝謝

+0

你是否已經嘗試過這樣做並且它失敗了,還是你在嘗試之前試圖確認它會起作用? – 2010-06-26 05:19:24

+0

我想知道這是正確的方式來初始化其他結構的結構,或不是 – 0xAX 2010-06-26 05:21:47

+0

你應該發佈你的main(),以便我們可以看到你到底想要做什麼。沒有足夠的上下文來給你你正在尋找的答案,否則。 – SiegeX 2010-06-26 05:55:46

回答

1

好了,你出的情況下,它只是天色複製,從而很好的指針。如果他們的結構,它也將是確定... gcc會在這種情況下(至少一次)發射到memcpy一個電話,但C標準確實允許結構複製:

struct s { int x; int y }; 
struct s a = { 3, 4 }; 
struct s b = a;