包括main中.c文件中的函数定义

时间:2011-08-09 04:14:50

标签: c include c-preprocessor

我必须写几个很长的函数。所以,我决定将它们放在不同的文件中并将它们链接到main ..这样就像我在main()之后编写函数定义一样。

我该怎么做..

2 个答案:

答案 0 :(得分:3)

在.h文件中放置原型

#ifndef MY_HEADER_H
#define MY_HEADER_H
void hello(void);
#endif

在单独的.c文件中,您实现了诸如hello.c

之类的功能
#include "myheader.h"
void hello()
{
    printf("Testing function from other file\n");
}

然后在主要的你做

#include "myheader.h"

int main()
{
    hello();
    return 0;
}

确保在链接文件之前将hello.c编译成hello.o,否则它会告诉您它无法解析对hello的引用。

答案 1 :(得分:0)

查找创建文件结尾为.h的头文件。 让我们说这个头文件名为blah.h。

此标题的一般结构将是

#ifndef BLAH_H_INCLUDED
#define BLAH_H_INCLUDED

//code

#endif // BLAH_H_INCLUDED

这些是标题保护,以防止多重包含。 在代码中你仍然会有你的函数声明。

例如,void function(int blah);将是一个有效的函数声明。

然后,此文件包含在使用或定义声明的函数的所有文件的顶部,#include "blah.h"

然后您可以在其他文件中定义您的功能,当您将它们链接在一起时,程序将起作用。

相关问题