繁体   English   中英

C-指向结构,语法的指针的数组

[英]C - array of pointers to struct, syntax

我有一个结构A和一个指向该结构实例的指针的数组
我正在尝试直接从数组访问成员,但是我不知道正确的语法是什么:

struct A  
{  
  int a;  
  void** b;  
}

A* p = (A*) malloc(sizeof(A));  
p->b = (A**) malloc(sizeof(A*) * 3);

//
// something is done
//

int c;

A* test = p->b[0];
c = test->a;

基本上,我要问的是如何摆脱中间的A *测试,以便可以在一行中分配c的值?

做就是了

int c = ((struct A*) (p->b[0]))->a;

定义

struct A  
{  
  int a;  
  struct A ** b;  
}

这会做

int c = p->b[0]->a;

你可以做 :

c = ((A*) (p->b[0]))->a;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM