Здравствуйте)! Как передать значение массива начиная с какого-либо элемента(например с 6)...

0 голосов
22 просмотров

Здравствуйте)! Как передать значение массива начиная с какого-либо элемента(например с 6) через указатель? P. S. Язык Си


image
image

Информатика (77 баллов) | 22 просмотров
0

Если a указывает на начало, то a + 5 на 5-й элемент (если считать от нуля); *(a + 5) даст такой же результат, что и a[5]

Дан 1 ответ
0 голосов

Конечно можно и через указатель и через ссылку, смотря для чего?)

void foo(int* ptr)  тогда вызов выглядит так --> foo(arr + 3)

или

void foo(int& ptr) и вызов --> foo(arr[3]) это более безопасный вариант, без доступа к соседним ячейкам памяти, без копирования, но с возможностью изменения значения в самом массиве, ну, конечно, если не использовать константность, хотя и это 100% гарантии не дает const_cast никто не отменял)) Так что думаю вам и обычной

void foo(int value)

должно хватить.


(4.2k баллов)