Salve, il seguente codice:
Codice PHP:
void f(void* x)
{
int y = (int)x;
printf("%d\n", y);
}
int main()
{
int x = 1;
f((void*)x);
}
non dovrebbe creare problemi, giusto?
Il compilatore non dice nulla e il programma funziona e, da quanto ho capito, posso usare il void* per indicare una qualsiasi cosa (puntatore e non). Correggetemi se sbaglio.
Invece cosa succede se faccio così?
Codice PHP:
void f(void* x)
{
int y = (int)x;
printf("%d\n", y);
}
int main()
{
f((void*)1);
}
cioè utilizzando direttamente una costante? Può crearmi problemi in qualche maniera, nonostante il compilatore non mi segnali nulla e il programma funzioni?