Передача параметра в функцию - код не компилируется - C (СИ)
Формулировка задачи:
Не могу скомпилить. Выдает ошибку. Вроде простейший пример, а не получается.
Ошибки такая
main_FUNC_ссылка.c:39:14: error: expected ‘;’, ‘,’ or ‘)’ before ‘&’ token (на эту строку int fn (int &rnArg))
main_FUNC_ссылка.c: In function ‘main’:
main_FUNC_ссылка.c:56:3: warning: implicit declaration of function ‘fn’ [-Wimplicit-function-declaration]
компилятор gcc
int fn (int &rnArg) // принимаем в качестве аргумента указатель { rnArg =10; // присваиваем значению 10 return 1; } int main (int nNumberofArgs, char *pszArgs[]) // надо будет разобраться с аргументами { int n = 0; // присваиваем n 0 printf ("значение n = %d \n", n); // печатаем 0 fn (n); // в функцию передаем переменную n printf ("значение n = %d \n", n); // печатаем, а теперь n равно 10 return 1; }
Решение задачи: «Передача параметра в функцию - код не компилируется»
textual
Листинг программы
int fn (int *rnArg) // принимаем в качестве аргумента указатель { *rnArg =10; // присваиваем значению 10 return 1; } int main (int nNumberofArgs, char *pszArgs[]) // надо будет разобраться с аргументами { int n = 0; // присваиваем n 0 printf ("значение n = %d \n", n); // печатаем 0 fn (&n); // в функцию передаем переменную n printf ("значение n = %d \n", n); // печатаем, а теперь n равно 10 return 1; }
Объяснение кода листинга программы
- Объявлена функция
fn
, которая принимает в качестве аргумента указательrnArg
на целое число и возвращает целочисленное значение 1. - Внутри функции
fn
указателюrnArg
присваивается значение 10. - В функции
main
объявлены две переменные:n
типаint
иpszArgs
типаchar *[]
. - Переменная
n
инициализируется значением 0. - Выводится значение переменной
n
на экран. - Функция
fn
вызывается с аргументом&n
, гдеn
- это переменная из функцииmain
. - Выводится значение переменной
n
на экран. Оно изменилось на 10. - Функция
main
возвращает 1.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д