Вы используете .
, когда имеете дело с переменными.Вы используете ->
, когда имеете дело с указателями.
Например:
struct account {
int account_number;
};
Объявите новую переменную типа struct account
:
struct account s;
...
// initializing the variable
s.account_number = 1;
Объявитеa
в качестве указателя на struct account
:
struct account *a;
...
// initializing the variable
a = &some_account; // point the pointer to some_account
a->account_number = 1; // modifying the value of account_number
Использование a->account_number = 1;
является альтернативным синтаксисом для (*a).account_number = 1;
Надеюсь, это поможет.