Это немного озадачивает меня, потому что он работал в прошлом.Недопустимое применение 'sizeof' к незавершенному типу struct
У меня есть VEctor3-структуру и matrix4 структур, которые определены как этот
common_struct.h выглядит как этот
struct {
float m[16];
} mat4_scalar;
struct {
float p[3];
} vector3_scalar;
тогда в моей vector3_scalar.h у меня есть такие функции, как эти:
#include "../../common/common_structs.h"
struct vector3_scalar* vec3_zero(void);
struct vector3_scalar* vec3_up(void);
struct vector3_scalar* vec3_right(void);
struct vector3_scalar* vec3_forward(void);
in my vector3_s calar.c Я пытаюсь таНос в vector3_scalar вроде этого:
#include "../headers/vector3_scalar.h"
struct vector3_scalar* v = (struct vector3_scalar*)malloc(sizeof(struct vector3_scalar)); //<--- error occurs here
, но я получаю недопустимое применение «SizeOf» к неполному типу структуры vector3_scalar
Я также попытался включая common_structs.h непосредственно в файле .c, но это тоже не помогает.
Что я делаю неправильно в этой ситуации?
Нет, он никогда не работал –
спасибо за проницательный комментарий @DavidHeffernan, который действительно помог мне решить мою проблему. – user1610950
Ну, это никогда не работало? Другими словами, вопрос содержит ошибочную информацию. –