@rsatarov

В каких случаях нужно использовать указатели на элементы структуры?

В каких случаях нужно обращаться через точку, а в каких через стрелку?

Допустим, эта функция:
void funcName(StructName strct) {
	printf("%d\n", strct.field);
}

Будет чем-то отличаться от этой?
void funcName(StructName strct) {
	printf("%d\n", strct->field);
}
  • Вопрос задан
  • 142 просмотра
Решения вопроса 1
@res2001
Developer, ex-admin
Когда работаете с указателем на структуру, то используете стрелку, а если непосредственно структура (ссылка) - точка:
StructName * strctptr;
strctpptr->field;
StructName strct;
strct.field;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
zagayevskiy
@zagayevskiy
Android developer at Yandex
В том случае, когда у вас есть указатель на структуру, нужна стрелка, иначе - точка. Кстати, вроде, это не С, а С++.
strct->field это синтаксический сахар для (*strct).field
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы