Сопоставление Middle Указатели и ссылки обновлено

Сопоставьте объявление и его смысл

Вопрос

Сопоставьте объявление и то, что оно означает.

Попробуйте сами

Нажмите слева, потом подходящее справа.

Показать ответ и разбор

Коротко

Скобки меняют приоритет: без них относится к типу элемента, со скобками (a) или (&r) сначала говорит, что a указатель (ссылка), а потом на что он указывает. Указатель на функцию читается так же: f указатель на функцию int(int).

Правильные пары

const int* p
Указатель на константный int: *p менять нельзя
int* const p
Константный указатель: нельзя менять сам p
int* a[3]
Массив из трёх указателей на int
int (*a)[3]
Указатель на массив из трёх int
int (*f)(int)
Указатель на функцию, принимающую и возвращающую int
int (&r)[3]
Ссылка на массив из трёх int

Разбор

Скобки меняют приоритет: без них * относится к типу элемента, со скобками (*a) или (&r) сначала говорит, что a указатель (ссылка), а потом на что он указывает. Указатель на функцию читается так же: f указатель на функцию int(int).

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме