-6

在 C 程序中,当我定义一个结构时。

在什么情况下我会使用“->”以及在什么情况下使用“。” ?

例如

typedef struct foo foo;

struct foo{

  double bar;
  double bar2;
}

foo barbar;

我什么时候用barbar.bar,什么时候用barbar->bar

4

2 回答 2

2

Left of->应该是指针类型,而普通变量/实例为..

  • 如果你有struct foo myFoo,你应该使用myFoo.or (&myFoo)->
  • 如果你有struct foo *myFoo,你应该使用myFoo->or (*myFoo).
于 2014-05-09T16:03:46.873 回答
1

使用 a->作为指向结构的指针,因为它取消引用指针,使用 a.作为结构

于 2014-05-09T16:03:24.943 回答