Static функции - разобраться с областью видимости - C (СИ)

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

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

Добры день! Помогите пжалуйста, есть два таких куска кода:
static int listening(int* p)
{
    (*p) = 0;
    return(0);
}
#include <stdio.h>
#include "mListener"
 
int main(void)
{
    int h = 10;
    printf("%d\n", h);
    
    listening(&h);
    printf("%d\n", h);
 
    return (0);
}
По идее же функция

listening

не должна быть видна в мэйне? - компилируется же все нормально.

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

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
int static_fun(int);        /* заголовок */
 
int main()
{
    printf("%d\n", static_fun(3));
    
    exit(0);
}

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

  1. Включаем необходимые заголовочные файлы: и
  2. Определяем функцию с именем static_fun, которая принимает целочисленный аргумент и возвращает целочисленное значение. Тип возвращаемого значения - int.
  3. В функции main()
  4. Выводим результат вызова функции static_fun с аргументом 3 с помощью функции printf.
  5. Завершаем работу программы с помощью функции exit.
  6. Аргумент функции main() - 0, который передается в функцию exit.
  7. Значение, которое возвращает функция exit, не используется.
  8. Результат вызова функции static_fun(3) не сохраняется в переменной.
  9. Имя функции static_fun является статическим (то есть, функция может быть вызвана только внутри другой функции или в том же блоке кода, где она была определена).
  10. Тип возвращаемого значения функции static_fun - int.
  11. Область видимости аргумента функции static_fun - функция main().
  12. Область видимости функции static_fun - функция main().
  13. Область видимости переменной 0, которую возвращает функция exit, не определена.
  14. Область видимости переменной 0, которую возвращает функция exit, не определена.
  15. Область видимости переменной 0, которую возвращает функция exit, не определена.
  16. Область видимости переменной 0, которую возвращает функция exit, не определена.
  17. Область видимости переменной 0, которую возвращает функция exit, не определена.
  18. Область видимости переменной 0, которую возвращает функция exit, не определена.
  19. Область видимости переменной 0, которую возвращает функция exit, не определена.
  20. Область видимости переменной 0, которую возвращает функция exit, не определена.

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


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

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

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