Faça uma função privada em C [duplicado]

Dec 09 2020

Eu tenho um arquivo .c que contém muitas funções. Eu quero que apenas um seja chamado fora do arquivo, esta função pública chama as funções privadas e a função privada também chama uns aos outros.

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

Respostas

1 dbush Dec 09 2020 at 05:25

Se você declarar uma função como static, ela só será visível com esse nome de dentro do arquivo de origem (ou mais precisamente, de dentro dessa unidade de tradução ):

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