Я только что написал пример программы в двух отдельных файлах:
a1.c
#include <stdio.h>
int main() {
// using the external object
testing();
return 0;
}
, которая вызывает функцию, которая существует в a2.c
void testing() {
printf("temp\n");
}
и затем все, что я сделал, это скомпилировал его с помощью следующей команды:
$ gcc a1.c a2.c -o a1
и это Сработало
На самом деле, когда вы компилировали свой файл, вы включали другой файл C (lineParser.c
) в шаг компиляции для анализа вместе с файлом ParseOne.c
?
В таком случае, насколько я понимаю, gcc
фактически проанализирует все символы в связанных файлах C (или obj-файлах) и заменит их соответствующим образом в конечном объектном файле, который будет создан.
Надеюсь, это поможет.