可能重复:C中的
箭头运算符( - >)用法
据我所知,只有C++可以使用类(obj->某些东西)但是我在很多C应用程序中看到过这个运算符.
还有一个小问题.通常一个人使用C中的结构,如下所示:
structname.somevariable
Run Code Online (Sandbox Code Playgroud)
但是,我看到他们使用像:
structname.something1.something2
Run Code Online (Sandbox Code Playgroud)
它与关键字union有关吗?
struct A
{
int b;
};
struct A *a;
a->b == (*a).b;
Run Code Online (Sandbox Code Playgroud)
不,这与工会无关.它只是成为会员的一员.
如果你有一个指向结构对象的指针,比如
struct P * p;
Run Code Online (Sandbox Code Playgroud)
你访问成员 ->
p->member
Run Code Online (Sandbox Code Playgroud)
如果p不是指针,则使用 .
struct P p;
p.member
Run Code Online (Sandbox Code Playgroud)
任何 C书都涵盖了这一点:P