Как обозначить глобальные переменные, чтобы оба файла .c имели к ним доступ - C (СИ)
Формулировка задачи:
Имеется файл с расширением .h. В нем указаны глобальные переменные(например int n=0), так же в этом файле есть прототип функции, который использует эти глобальные переменные.
В основной программе подключается данный .h файл, и не каких ошибок при компиляции не вызывает.
Но в функции, прототип которой указан в .h файле. Возникает куча ошибок из-за неправильного обозначений глобальных переменных, он их не видит, и отказывается компилится. Хотя там там же .h файл включен.
Как обозначить глобальные переменные чтобы оба файла .c имели доступ к ним?
Решение задачи: «Как обозначить глобальные переменные, чтобы оба файла .c имели к ним доступ»
textual
Листинг программы
#include "header.h" static int foo = 0; int do_dirty_things_with_foo(void) { return foo++; }
Объяснение кода листинга программы
- Включается заголовочный файл
header.h
. - Объявляется статическая переменная типа int с именем foo и инициализируется значением 0.
- Создается функция do_dirty_things_with_foo, которая принимает аргумент типа void и возвращает значение типа int.
- Внутри функции do_dirty_things_with_foo происходит возврат значения переменной foo, после чего значение foo инкрементируется на 1.
- Код не содержит функций инициализации и освобождения памяти, а также не содержит циклов, поэтому список переменных, которые могут быть доступны для других файлов .c, не применим.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д