结构声明和指针在一行中

时间:2016-01-26 16:40:20

标签: c pointers struct declaration

我搜索一种初始化结构的方法,并将该结构指针返回到一行。 (便携式方式是最好的,但至少对于gcc而言)

例如,我有一个功能:

HUDTableViewController

结构定义:

Dispose

我能做到:

SomeViewController

我有办法在一行中做到这一点吗?

类似的东西:

void myfunc(const mystruct_t *ptr);

3 个答案:

答案 0 :(得分:3)

您可以使用自C99以来支持的compound literal

myfunc(&(mystruct_t){.field1=23, .field2="myname" });

答案 1 :(得分:1)

使用compound literal(<{1>}之前的gcc扩展程序,C99 之后的标准支持),类似

C99

应该是可能的。

答案 2 :(得分:0)

在C ++中,您可以通过构造函数执行此操作,但您需要使用C99复合文字。

注意:我知道它被标记为C.这只是我想要的另一种选择。

相关问题