Я пытаюсь создать динамическую структуру внутри которой есть другая динамическая структура. Я ловлю SIGSEGV в realloc();
Вот мой код. Что я делаю не так?
#include "string.h"
#include "stdlib.h"
typedef struct VAR
{
char *Key;
char *Type;
char *Value;
} VAR_T;
typedef struct ARR
{
VAR_T *v;
int Count;
} ARR_T;
int AddVar (ARR_T *V, char *type, char *key, char *value)
{
if (!strcmp(type,"int") ||
!strcmp(type,"char") ||
!strcmp(type,"float"))
{
V->v[V->Count].Value = (char*)realloc(V->v[V->Count].Value,sizeof(char));
strcpy(V->v[V->Count].Value,value);
V->Count++;
}
}
int main ()
{
ARR_T v;
v.Count = 0;
AddVar(&v,"int","a","1");
}