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

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

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

Не могу скомпилить. Выдает ошибку. Вроде простейший пример, а не получается.
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;
}
Ошибки такая 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

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

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;
}

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

  1. Объявлена функция fn, которая принимает в качестве аргумента указатель rnArg на целое число и возвращает целочисленное значение 1.
  2. Внутри функции fn указателю rnArg присваивается значение 10.
  3. В функции main объявлены две переменные: n типа int и pszArgs типа char *[].
  4. Переменная n инициализируется значением 0.
  5. Выводится значение переменной n на экран.
  6. Функция fn вызывается с аргументом &n, где n - это переменная из функции main.
  7. Выводится значение переменной n на экран. Оно изменилось на 10.
  8. Функция main возвращает 1.

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


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

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

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