我有3个文件,banca.c
,conticorrenti.c
和banca.h
。banca.h
包含函数的声明。banca.c
包含:
#include <stdio.h>
#include <pthread.h>
以及函数的实现。
conticorrenti.c
包含:#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#include "banca.h"
如何在Linux终端上运行此程序?
如果
banca.h
不包含在其中,那么banca.h
如何读取方法的实现? 最佳答案
包含是预处理文本处理步骤。它只是将头的内容粘贴到#include
所在的C文件中。
它不会使代码可调用,这是一个链接时间问题。
您需要将两个C文件链接在一起,如下所示:
$ gcc -o banca banca.c conticorrenti.c
首先编译两个C文件,然后将结果链接到一个可运行的程序。
更新您的注释意味着您还使用pthreads,那么您通常必须链接:
$ gcc -o banca banca.c conticorrenti.c -lpthread
这里,
-l
是编译器在链接时包含命名库的选项。