Причина, по которой это делается, состоит в том, чтобы разбить код на более чистый и отсортированный формат, чтобы функции, относящиеся к конкретной операции, можно было объединить в один файл и затем вызвать из другого файла.ПРИМЕЧАНИЕ: это не обязательно делать, но это хорошая практика программирования.
Теперь есть два способа сделать это: 1. включая файлы 2. объявить функцию как внешнюю и затем связать их во время связывания.
1.Включение файла - это метод, который вы, вероятно, видите в своем коде под рукой.Функции определены в одном файле, и этот файл включается с помощью #include «filename. [H / c]», а затем вызывая функцию, как было объявлено в данном файле.
file_to_include.c
void my_func()
{
printf("Hello!\n");
}
file_that_include.c
#include<stdio.h>
#include"file_to_include.c"
int main()
{
my_func();
return 0;
}
для компиляции вы просто выполните
gcc file_that_include.c
используя extern, вы можете сделать то же самое, но без использования директивы #include
file_to_include.c
void my_func()
{
printf("Hello!\n");
}
file_that_include.c
#include<stdio.h>
extern void my_func();
int main()
{
my_func();
return 0;
}
В этом случае при компиляции вам нужно предоставить оба файла компилятору
gcc file_that_include.c file_to_include.c