Как я могу создать [закрытые] заголовочные файлы C

Я хочу смочь создать набор функций в заголовочном файле, что я мог #include в одной из моих Программ C.

61
задан user340838 14 May 2010 в 01:41
поделиться

1 ответ

  1. Откройте ваш любимый текстовый редактор
  2. Создайте новый файл с именем Any.h
  3. Поместите в него прототипы функций

ГОТОВО.

Пример something.h

#ifndef WHATEVER_H_INCLUDED
#define WHATEVER_H_INCLUDED
int f(int a);
#endif

Примечание: include guards (команды препроцессора) добавлены благодаря luke. Они избегают включения одного и того же файла заголовка дважды в одну и ту же компиляцию. Другая возможность (также упомянутая в комментариях) - добавить #pragma once , но не гарантируется, что она будет поддерживаться всеми компиляторами.

Пример something.c

#include "whatever.h"

int f(int a) { return a + 1; }

А затем вы можете включить «something.h» в любой другой файл .c и связать его с объектным файлом any.c.

Примерно так:

sample.c

#include "whatever.h"

int main(int argc, char **argv)
{
    printf("%d\n", f(2)); /* prints 3 */
    return 0;
}

Для его компиляции (если вы используете GCC):

$ gcc -c whatever.c -o whatever.o
$ gcc -c sample.c -o sample.o

Чтобы связать файлы для создания исполняемого файла:

$ gcc sample.o whatever.o -o sample

Вы можете протестировать образец:

$ ./sample
3
$
135
ответ дан 24 November 2019 в 17:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: