Ciao a tutti,
qualcuno mi riesce a spiegare la differenza tra queste due forme di typedef?
1)
struct automobile //struttura accessori
{
int num;
struct automobile *next;
};
typedef struct automobile Auto;
typedef Auto *Ptr;
int main()
{
Ptr Head,Curr,Prev;
Head=malloc( sizeof(Auto));
}
2)
typedef struct t_automobile //struttura accessori
{
int num;
struct t_automobile *next;
}Auto,*Ptr;
int main()
{
Ptr Head,Curr,Prev;
Head=(Head)malloc( sizeof(Auto));
}
Come vedete sono molto simili, ma nella seconda la malloc vuole perforza il cast mentre nella prima no...perche? Inoltre adottando il metodo 1) il programma delle liste funziona perfettamente.........cosa ce quindi di sbagliato nel numero 2)? Grazie dell aiuto!
Saluti!