Передается по значению (в соответствии с копией перевода):
Когда аргументы передаются функции (параметр), аргументы (аргумент) не передается непосредственно в функцию, что делает двадцать первое значение аргумента (параметр) копия хранится на стеке, а затем может быть использован для функции копирования, а не используя начальное значение.
Например:
#include <stdio.h> недействительным изменения ( INT ); Int основных () { INT Num = 9 ; изменение (NUM); // скопировать значения Num = 9 для замены переменных, Е ( " NUM D =% \ n- " , NUM); // изменить значение копии, вернуть 0 ; // основная функция Num пита не изменяется с функцией изменения становится } недействительными изменения ( INT Num) {++ ; }
Результат:
а = 9
Прошел по ссылке:
Относится к при вызове функции передает адрес фактических параметров функции, то параметры для изменения будут влиять на фактические параметры в функции
#include <stdio.h> недействительным изменение ( INT * ); Int основных () { INT Num = 9 ; Изменение ( & Num); // передать адрес NUM на Е ( " Num =% D \ n- " , Num); вернуть 0 ; } недействительное Изменение ( INT * Num) // переменная указатель, она хранится в адресе главной функции Num целых переменной { + = Num 1. ; // * означает взятие адреса, адрес принимает значение, точка значения NUM, и выполнение операции добавления }
Массив в качестве параметра функции: