我有一个包含变量的结构体。 如果结构作为参考传递,我该如何访问结构变量?从结构中获取变量-c
struct point {
float x;
};
float function(struct point *p)
{
return p.x;
}
......换句话说,我需要在函数体中更改它以避免造成错误?
我有一个包含变量的结构体。 如果结构作为参考传递,我该如何访问结构变量?从结构中获取变量-c
struct point {
float x;
};
float function(struct point *p)
{
return p.x;
}
......换句话说,我需要在函数体中更改它以避免造成错误?
试试这个:
struct point {
float x;
};
// return variable 'x' of pointer 'p'
float function(struct point *p)
{
return p->x;
}
p->x
相当于(*p).x
。当你通过一个struct *
(指向struct的指针)时,你必须以指针的形式访问它。
是啊'p'是一个指针 –
@melpomene公平点;编辑。 –
两个选项:p-> x或(* p).x; –