结构成员语法

时间:2011-03-15 15:32:13

标签: c pointers syntax struct

我无法访问结构的成员

代码如下:

int main()
{

      typedef struct tempA
       {
         int a;
        }tempa;


      typedef struct tempB
      {
        tempa **tA;
       }tempb;

     tempb.(*tA)->a =5;
     printf("\n Value of a : %d",tempb.(*tA)->a);

}

我尝试使用tempb.(*tA)->a;访问它,但我收到语法错误:

error: expected identifier before ‘(’ token 

访问int a的正确语法是什么?

提前致谢

1 个答案:

答案 0 :(得分:7)

正确的语法是(*tempb.tA)->a。您希望取消引用tempb.tA以获取指向tempA的指针,然后取消引用该指针以访问a成员。