Ich habe eine Struktur wie folgt aus:Segfault wenn ich sende Strukturadresse
typedef struct s_struct
{
float x1;
float y1;
float x2;
float y2;
} t_struct;
diese verwendet wird, einige Schlaganfall auf meinem Bildschirm zu zeichnen, aber ich habe ein kleines Problem, ich möchte meinen X-Wert ändern, wenn das Recht Pfeil gedrückt wird, aber es Segfaults, ich denke, es ist, weil ich ... nicht richtig Adresse meiner Struktur senden Dies ist, wie ich tue:
void draw_all(t_struct *param)
{
draw_horizon(param);
draw_verti(param);
}
void draw_horizon(t_struct *param)
{
param->x1 = param->x1 + param->C_Y;
param->y1 = param->y1 + param->C_X;
param->x2 = param->x2 + param->C_Y;
param->y2 = param->y2 + param->C_X;
param->y2 = param->y2 + param->C_X;
stroke(param);
}
Und die Funktion, die aufgerufen wird, wenn ich meinen Pfeil nach rechts drücken:
int event(int keycode, t_struct *param)
{
if (keycode == 53)
{
printf("exit succes.\n");
exit(1);
}
if (keycode == 124)
{
printf("====\n");
printf("PRE C_X = %f\n", param->C_X);
param->C_X = param->C_X + 1;
printf("POST C_X = %f\n", param->C_X);
draw_all(¶m);
}
return (0);
}
Meine Funktion draw_verti die gleiche ist, aber für Verticals Schlaganfall ... Die segfault ist, weil ich eine Kopie meiner Struktur haben und ich es nicht geschafft, die Adresse zu senden ... Vielen Dank!
Was ist 't_fdf'? – Marievi
Ja, und viel mehr von Ihrem Code (relevant für diese Frage) fehlt auch! –
Falscher Name sorry ... – Aornn