Wiem, że wcześniej użyłem #pragma startup
i #pragma exit
, ale kiedy wykonam poniższy kod, generuje on tylko In main
. Czy ktoś może mi powiedzieć, co się tutaj dzieje?Czy kompilator dyrektyw #pragma jest zależny?
#include<stdio.h>
#pragma startup A 110
#pragma startup B
#pragma exit A
#pragma exit B 110
int main()
{
printf("\nIn main");
return 0;
}
void A()
{
printf("\nIn A");
}
void B()
{
printf("\nIn B");
}
Czy jest to zależne od kompilatora? Używam kompilatora gcc.
stary kumpel. Ale przynajmniej wiem, jak wykonać funkcję. –
Funkcja A i B są wywoływane za pomocą dyrektywy #pragma za pomocą argumentów "startup" i "exit". Nie musi więc bezpośrednio wywoływać funkcji A i B z głównej funkcji. Zostanie on automatycznie wywołany przed i po wykonaniu głównej funkcji. –