带有realloc函数的下一个大小无效

时间:2018-09-24 15:59:37

标签: c memory dynamic realloc

我有一个动态结构,我正在尝试进行重新分配以在上面保存新信息,但是当我尝试这样做时,它不起作用...

我有这个结构:

typedef struct {
    short int tipo;
    short int gravedad;
    char *mensaje;
    char *proceso;
    short int hora;
    short int min;
    short int seg;
}Info;

typedef struct {
    Info * info;
    int lenght;
}Logs;

我在main.c中执行一个malloc:

logs.info = (Info*) malloc (sizeof(Info*));

这是我尝试realloc()的部分:

#define CHAR_1 1
...
read(fd, &c, CHAR_1);
if (c == '\n') {
    l->lenght++;
    int size = (l->lenght)+1;
    l->info = (Info *) realloc (l->info, sizeof(Info*)*size);

}

第一次l->lenght为0。

compiler说:

  

realloc():下一个大小无效   中止(核心已弃用)

谢谢!

0 个答案:

没有答案