60

Cプログラムの1つに#includeできるヘッダーファイルに関数のコレクションを作成できるようにしたいと思います。

4

2 に答える 2

139
  1. お気に入りのテキストエディタを開きます
  2. whatever.hという名前の新しいファイルを作成します
  3. 関数プロトタイプをその中に入れてください

終わり。

例whatever.h

#ifndef WHATEVER_H_INCLUDED
#define WHATEVER_H_INCLUDED
int f(int a);
#endif

注:lukeのおかげで追加されたガード(プリプロセッサコマンド)を含めます。同じコンパイルに同じヘッダーファイルを2回インクルードすることは避けます。別の可能性(コメントにも記載されています)は追加する#pragma onceことですが、すべてのコンパイラでサポートされることが保証されているわけではありません。

例whatever.c

#include "whatever.h"

int f(int a) { return a + 1; }

次に、「whatever.h」を他の.cファイルに含めて、whatever.cのオブジェクトファイルにリンクすることができます。

このような:

sample.c

#include "whatever.h"

int main(int argc, char **argv)
{
    printf("%d\n", f(2)); /* prints 3 */
    return 0;
}

コンパイルするには(GCCを使用している場合):

$ gcc -c whatever.c -o whatever.o
$ gcc -c sample.c -o sample.o

ファイルをリンクして実行可能ファイルを作成するには:

$ gcc sample.o whatever.o -o sample

サンプルをテストできます。

$ ./sample
3
$
于 2010-05-14T01:45:35.713 に答える