Как обозначить глобальные переменные, чтобы оба файла .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++;
}

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

  1. Включается заголовочный файл header.h.
  2. Объявляется статическая переменная типа int с именем foo и инициализируется значением 0.
  3. Создается функция do_dirty_things_with_foo, которая принимает аргумент типа void и возвращает значение типа int.
  4. Внутри функции do_dirty_things_with_foo происходит возврат значения переменной foo, после чего значение foo инкрементируется на 1.
  5. Код не содержит функций инициализации и освобождения памяти, а также не содержит циклов, поэтому список переменных, которые могут быть доступны для других файлов .c, не применим.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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