我似乎无法解决我在malloc代码行中遇到的这个错误。错误是“SIGABRT”。请教我如何解决这个问题。谢谢。
typedef struct caminho{
int nCient;
struct caminho *next;
}Caminho;
Caminho *temp1 = (Caminho*) malloc(sizeof(Caminho));
更新
typedef struct caminho{
int nCient;
struct caminho *next;
}Caminho;
Caminho *temp1 = malloc(sizeof(Caminho));
程序中唯一的其他结构和唯一的其他malloc:
typedef struct Cientista{
int nCient;
int nSignal;
int profundidade;
int distancia;
struct caminho *next;
} cientista;
cientista* vectorCientistas;
scanf("%d %d", &maxCientista, &maxCaminhos);
vectorCientistas = malloc(sizeof(cientista*) * maxCientista);
答案 0 :(得分:0)
发现问题!! 有:
vectorCientistas = malloc(sizeof(cientista*) * maxCientista);
溶液:
vectorCientistas = malloc(sizeof(cientista) * maxCientista;
为指针分配内存,我想要一个结构。