使用用户定义的头文件C
我不知道如何创建用户定义的头文件以及如何使用它,所以我想问一下我是否得到了正确的头文件 如果我有两个C程序,一个是demo.C,一个是tree.C,我可以创建一个头文件tree.h:使用用户定义的头文件C,c,header-files,C,Header Files,我不知道如何创建用户定义的头文件以及如何使用它,所以我想问一下我是否得到了正确的头文件 如果我有两个C程序,一个是demo.C,一个是tree.C,我可以创建一个头文件tree.h: #ifndef TREE_H #define TREE_H //some prototypes here int size(); int isFull(); #endif 在实际的tree.c程序中,我把所有的实际函数 #include "tree.h" int size() { //s
#ifndef TREE_H
#define TREE_H
//some prototypes here
int size();
int isFull();
#endif
在实际的tree.c程序中,我把所有的实际函数
#include "tree.h"
int size()
{
//some implementation
}
int isFull()
{
//some implementation
}
我想知道我是否有另一个名为demo.c的程序,我可以只包含tree.h头并使用tree.c中的函数吗?就像我们在Java中使用另一个类所做的一样?
我需要把它们放在同一个目录中吗?简言之,是的,你可以只做
#在demo.c中包含“tree.h”
如果tree.h与demo.c不在同一目录中,您可以通过#include“some/other/dir/tree.h”
包含其路径,也可以在编译器调用中传递include标志。例如,如果您使用的是gcc,则可以执行-Isome/other/dir
demo.c只需要查看tree.h包含的函数原型,就可以知道它调用的函数类型。在您想将其编译成可执行文件之前,不需要tree.c。因此,如果我想在demo.c中使用tree.c的调用函数,然后运行demo。我是否需要编译tree.c以及这两个可执行文件是否必须位于同一目录中?是的,您需要在编译器调用中包含这两个文件。例如,
gcc demo.c some/other/dir/tree.c
。