int loguj(int wskaznik)
{
FILE *plik;
plik = fopen("plik.log", "a");
fprintf(plik, "%d\n", wskaznik);
fclose(plik);
return 0;
}
Prosta funkcja dopisująca inta do pliku.
Jeśli stworzę czyste źródło w którym jest zadeklarowana tylko ta funkcja i w main'ie jej wywołanie, to na Falconie działa, tzn tworzy plik i dopisuje do niego przesłanego inta.
Natomiast jak dodałem tą funkcję do jakiegoś większego pliku (prościutka gra open source) to tylko tworzy plik i nic w nim nie zapisuje.
Tu jest wycinek z definicji tej funkcji i użycia w main'ie:
...
int loguj(int wskaznik)
{
FILE *plik;
plik = fopen("griffon.log", "a");
fprintf(plik, "%d\n", wskaznik);
fclose(plik);
return 0;
}
#undef main
int main()
{
loguj(100);
sys_initialize();
game_showlogos();
game_main();
return 0;
}
Natomiast jeśli skompilowałem to natywnie pod linuksem, to wszystko jest OK, plik się tworzy i przesłany int dopisuje się w pliku.
Co może powodować, że nie działa to na Falconie?