Передача аргументов в функцию. Работа с памятью. - C (СИ)

Узнай цену своей работы

Формулировка задачи:

int f(int a) {...}
int g(float *a) {...}
int h(float *&a) {...}
 
int main() {
float *p;
int a=5;
int res;
....
res=f(a);
res=g(p);
res=h(p);
 
return 0;
}
Память делится на кучу и стек. В случае с вызовом функции f(), создается копия элемента a и в это поле вносится значение равное 5? А что происходит при вызове функции g() И h() и в чем отличие? Подскажите, пожалуйста, где можно прочитать, каким образом организуется работа с памятью?

Решение задачи: «Передача аргументов в функцию. Работа с памятью.»

textual
Листинг программы
int h(float *a) {...}

Объяснение кода листинга программы

В данном коде определен прототип функции с именем h, которая принимает на вход указатель на переменную типа float.

  1. a - указатель на переменную типа float.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5
Похожие ответы