2010-06-26 152 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;