Разница между вызовом по значению и вызовом по ссылке
Функции можно вызывать двумя способами: вызов по значению или вызов по ссылке . Эти два способа обычно различаются типом значений, передаваемых им в качестве параметров.
Параметры, переданные в функцию, называются фактическими параметрами, тогда как параметры, полученные функцией, называются формальными параметрами .
Вызов по значению : в этом методе передачи параметров значения фактических параметров копируются в формальные параметры функции, и два типа параметров хранятся в разных местах памяти. Таким образом, любые изменения, внесенные внутри функций, не отражаются в фактических параметрах вызывающего.
Вызов по ссылке : как фактические, так и формальные параметры относятся к одним и тем же местоположениям, поэтому любые изменения, внесенные внутри функции, фактически отражаются в фактических параметрах вызывающего.
Звонок по значению | Звоните по ссылке |
---|---|
При вызове функции мы передаем ей значения переменных. Такие функции известны как «Вызов по значениям». | При вызове функции вместо передачи значений переменных мы передаем адрес переменных (расположение переменных) в функцию, известную как «Вызов по ссылкам». |
В этом методе значение каждой переменной в вызывающей функции копируется в соответствующие фиктивные переменные вызываемой функции. | В этом методе адреса фактических переменных в вызывающей функции копируются в фиктивные переменные вызываемой функции. |
С помощью этого метода изменения, внесенные в фиктивные переменные в вызываемой функции, не влияют на значения фактических переменных в вызывающей функции. | С помощью этого метода, используя адреса, у нас будет доступ к фактическим переменным и, следовательно, мы сможем ими манипулировать. |
// C программа для иллюстрации // вызов по значению #включают | // C программа для иллюстрации // Вызов по ссылке #включают РЕКОМЕНДУЕМЫЕ СТАТЬИ |