Подтвердить что ты не робот

Как разбить программу на несколько файлов?

Я хочу написать свои C-функции в 2 отдельных файлах .c и использовать мою IDE (кодовые блоки), чтобы скомпилировать все вместе.

Как установить это в блоках кода?

Как мне вызвать функции в одном .c файле из другого файла?

4b9b3361

Ответ 1

В общем, вы должны определить функции в двух отдельных файлах .c (скажем, Ac и Bc) и поместить их прототипы в соответствующие заголовки (Ah, Bh, не забывайте охрану включения).

Всякий раз, когда в файле .c вам нужно использовать функции, определенные в другом .c, вы #include соответствующего заголовка; тогда вы сможете использовать функции в обычном режиме.

Все файлы .c и .h должны быть добавлены в ваш проект; если IDE спросит вас, нужно ли их компилировать, вы должны отметить только .c для компиляции.

Быстрый пример:

Functions.h

#ifndef FUNCTIONS_H_INCLUDED
#define FUNCTIONS_H_INCLUDED
/* ^^ these are the include guards */

/* Prototypes for the functions */
/* Sums two ints */
int Sum(int a, int b);

#endif

Functions.c

/* In general it good to include also the header of the current .c,
   to avoid repeating the prototypes */
#include "Functions.h"

int Sum(int a, int b)
{
    return a+b;
}

main.C

#include <stdio.h>
/* To use the functions defined in Functions.c I need to #include Functions.h */
#include "Functions.h"

int main(void)
{
    int a, b;
    printf("Insert two numbers: ");
    if(scanf("%d %d", &a, &b)!=2)
    {
        fputs("Invalid input", stderr);
        return 1;
    }
    printf("%d + %d = %d", a, b, Sum(a, b));
    return 0;
}