Cでプライベート関数を作成する[重複]

Dec 09 2020

多くの関数を含む.cファイルがあります。ファイルの外部で1つだけ呼び出されるようにしたいのですが、このパブリック関数はプライベート関数を呼び出し、プライベート関数は相互に呼び出します。

void f() {
   ....
}
void g() {
   f();
   ....  
}
void public() {
   f();
   ....
}

回答

1 dbush Dec 09 2020 at 05:25

関数をとして宣言するとstatic、そのソースファイル内から(より正確には、その変換ユニット内から)その名前でのみ表示されます。

static void f() {
   ....
}
static void g() {
   f();
   ....  
}
void public() {
   f();
   ....
}