Salve, questi sono i miei codici:
MAIN.C
int main(int argc, char const *argv[])
{
punto p1,p2;
float x1,y1,x2,y2;
x1=atoi(argv[1]);
y1=atoi(argv[2]);
p1=creaPunto(x1,y1);
do
{
printf("Inserisci il punto\n");
printf("X: ");
scanf("%f",x2);
printf("Y: ");
scanf("%f",y2);
p2=creaPunto(x2,y2);
if(distanza(p1,p2)==1)
printf("FUOCO\n");
else printf("ACQUA\n");
}while(p1->x!=p2->x&&p1->y!=p2->y);
return 0;
}
PUNTO.C
struct punto
{
float x;
float y;
};
Punto creaPunto(float x,float y)
{
punto p;
p->x=x;
printf("X %f\n",p->x);
p->y=y;
printf("Y %f\n",p->y);
return p;
}
float ascissa(Punto p)
{
return p->x;
}
float ordinata(Punto p)
{
return p->y;
}
float distanza(Punto p1,Punto p2)
{
float dx=p2->x-p1->x;
float dy=p2->y-p1->y;
return sqrt(dx*dx+dy*dy);
}
PUNTO.H
typedef struct punto *punto;
punto creaPunto(float x,float y);
float ascissa(punto p);
float ordinata(punto p);
float distanza(punto p1,punto p2);
Questo è invece l'errore:
error: dereferencing pointer to incomplete type 'struct punto'
}while(p1->x!=p2->x&&p1->y!=p2->y);
Come posso risolverlo