加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

“`在C`typedef struct`声明中是什么意思?

发布时间:2020-12-16 03:41:07 所属栏目:百科 来源:网络整理
导读:我正在看一个C结构,其中包含一些我以前从未见过的语法.结构如下所示: typedef struct structExample { int member1; int member2} * structNAME; 我知道通常具有以下结构: typedef struct structExample { int member1; int member2} structNAME; 我可以通
我正在看一个C结构,其中包含一些我以前从未见过的语法.结构如下所示:
typedef struct structExample {
   int member1;
   int member2
} * structNAME;

我知道通常具有以下结构:

typedef struct structExample {
   int member1;
   int member2
} structNAME;

我可以通过以下方式引用第二个结构定义的成员:

structNAME* tempStruct = malloc(sizeof(structNAME));
// (intitialize members)
tempstruct->member1;

第一个结构定义中的额外*是什么,以及如何引用第一个结构定义的成员?

解决方法

这意味着定义的类型是指针类型.这是声明类型的等效方法:
struct structExample {
    int member1;
    int member2;
};
typedef struct structExample * structNAME;

你会像这样使用它:

structNAME mystruct = malloc (sizeof (struct structExample));
mystruct->member1 = 42;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读