If using gcc and g++ compilers then this can be done by using __attribute__((constructor))
eg::
In gcc (c) ::
#include
void beforeMain (void) __attribute__((constructor));
void beforeMain (void)
{
printf ("\nbefore main\n");
}
int main ()
{
printf ("\ninside main \n");
return 0;
}
In g++ (c++) ::
#include
using namespace std;
void beforeMain (void) __attribute__((constructor));
void beforeMain (void)
{
cout<<"\nbefore main\n";
}
int main ()
{
cout<<"\ninside main \n";
return 0;
}