У меня есть структура, как это:Segfault когда я посылаю структуру адрес
typedef struct s_struct
{
float x1;
float y1;
float x2;
float y2;
} t_struct;
это используется, чтобы сделать некоторый удар на моем экране, но у меня есть небольшая проблема, я хочу изменить X значения, когда право стрелка нажата, но она возвращает ошибку сегментации, я думаю, это потому, что я не посылаю должным образом свою структуру адреса ... Это, как я:
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);
}
а функция которая вызывается, когда я нажимаю правую стрелку:
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);
}
Моя функция draw_verti та же, но для удара вертикалей ... потому, что выдаёт ошибку сегментации у меня есть копия моей структуры, и я не удается отправить адрес ... Спасибо!
Что такое 't_fdf'? – Marievi
Да, и еще много вашего кода (актуального для этого вопроса) также отсутствует! –
Неверное имя извините ... – Aornn