Перейти здесь: http://cdecl.org/Требуется уточнение cdecl: что такое «массив 5?»
Вход:
char (*arr)[5]
Выход:
DECLARE обр как указатель на массив 5 полукокса
Что такое "массив 5"? Это просто означает массив с 5 элементами?
Перейти здесь: http://cdecl.org/Требуется уточнение cdecl: что такое «массив 5?»
Вход:
char (*arr)[5]
Выход:
DECLARE обр как указатель на массив 5 полукокса
Что такое "массив 5"? Это просто означает массив с 5 элементами?
Это указатель на массив из 5 элементов.
//Standard array
char array[5];
//pointer to array
char (*arr)[5];
//Assign pointer of array to arr
arr = &array;
//Dereference arr and use it.
(*arr)[1] = 4;
Указатели и ссылки на массивы полезны для передачи массивов в функции, а также для их возврата. Не возвращайте локальные нестатические массивы, хотя их срок службы заканчивается при возврате.
Чтобы ссылаться на массив, который вы можете использовать это заявление: char (&arr)[5] = array;
Я не могу принять ваш ответ еще на 10 минут. Должен также дать другим людям шанс. –
Да, это делает. Что вам неудобно? Тот факт, что массивы могут распадаться на указатели? –
@ jnbrq-CanberkSönmez Массив может неявно применять к указателю, который указывает на первый элемент, однако этот «распад» не является указателем на массив. То, что OP имеет фактический указатель на массив –
нет дискомфорта, требуется только уточнение –