Cout << "Передача массива"

Cout << "Передача массива"

X Æ A-12


Небольшой, но важный пост, связанный сразу с несколькими темами - указатели, массивы, функции.

Рассмотрим, каким образом мы можем передать в функцию массив.

Вспомним, как мы это делали с обычными переменными. Однако с массивами так не получится, тут свои нюансы. Рассмотрим простенький код.

Если мы передаем в функцию переменную по значению, то как бы мы не меняли ее клона внутри функции, сама переменная не меняется. В нашем же случае, мы внутри функции изменили ячейку массива mas[0], и ее значение изменилось. Это работает именно таким образом, потому что переменная mas является указателем на первый элемент массива.

Обратите внимание, внутрь функции мы принимаем переменную типа int*(указатель), а на 19 строчке мы не используем операцию взятия адреса(&).

Таким образом, все действия с массивом внутри функции, будут происходить с настоящим массивом, а не его клоном.


С ув. TechMentor.

Report Page