Napisałem dla kolegi program w C na linuxie ze zwykłą kompilacją (żadnych dodatkowych opcji) i mi normalnie śmiga, działa, ale u niego na windowsie visual studio wywala błąd. Można to jakoś 'naprawić' bez ingerencji w kodzie? Jakieś opcje kompilacji u niego czy coś, nie wiem?
Błąd przy jednej z funkcji:
int zapisz(FILE *plik_wy,t_ob *ob, int *grey)
{
int i,j;
int (*px)[ob->wym_x];
px=(int(*)[ob->wym_x]) ob->px;
if (plik_wy==NULL)
{
fprintf(stderr,"Blad: Nie podano uchwytu do pliku\n");
return(0);
}
fprintf (plik_wy,"P2\n");
fprintf (plik_wy,"%d %d %d\n", ob->wym_x, ob->wym_y, *grey);
for (i=0; i<ob->wym_y; i++)
{
for (j=0; j<ob->wym_x; j++)
{
fprintf (plik_wy,"%d ",ob->px[i*(ob->wym_x)+j]);
fprintf(plik_wy,"\n");
}
}
}
expression must have a constant value (odnośnie tego px=(int(*)[ob->wym_x]) ob->px;)