在structoc的malloc之后出现SIGABRT错误

时间:2015-03-13 16:40:17

标签: struct malloc sigabrt

我似乎无法解决我在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);

1 个答案:

答案 0 :(得分:0)

发现问题!! 有:

vectorCientistas = malloc(sizeof(cientista*) * maxCientista);

溶液:

vectorCientistas = malloc(sizeof(cientista) * maxCientista;

为指针分配内存,我想要一个结构。