错误:请求会员' a'在不是结构或联合的东西中

时间:2016-03-25 14:55:55

标签: c

我将指向typedef struct的指针传递给函数。当我尝试更改typedef struct的内容时,会出现以下错误:

  

要求会员' a'在不是结构或联合的东西中   }

代码:

typedef struct _tempStruct
{
    int a;
    int b;
}TempStruct;

void _function(TempStruct ** param)
{
    TempStruct *temp = *param;
    temp -> a = 5; //no error
    *param -> a = 6; //error: request for member 'a' in something not a structure or union
}

Here is the link of code on ideone

我缺少什么?

2 个答案:

答案 0 :(得分:4)

->的优先级高于*(间接)的优先级,因此

*param -> a = 6;

应该是

(*param)->a = 6;

答案 1 :(得分:4)

箭头NSNumber运算符比->运算符绑定得更紧密。你需要:

*

不要在(*param)->a = 6; ->周围放置空格;他们紧紧地绑在一起空间标志着你是一个新手。