Как я могу выделить память для структуры? - PullRequest
0 голосов
/ 05 декабря 2011

У меня есть следующая структура:

struct Node{
    int *VC;
    Node *Next;
};

Моя цель - создать связанный список указателей, указывающих на int

Мой вопрос: как я могу выделить память для Node.то есть

int* ptr = (int *) malloc(sizeof(int)*10);
//code to allocate memory for a new Node n
n->VC = ptr;
n->Next = null;   

тогда позже я могу сделать:

 int *_ptr= (int *) malloc(sizeof(int)*10);
 //code to allocate memory for a new Node c
 c->VC= _ptr;
 c->Next = null;

 n->Next = c;

Ответы [ 2 ]

5 голосов
/ 05 декабря 2011

Выделение памяти для struct - это то же самое, что выделение памяти для int (в C).Просто используйте sizeof, чтобы получить размер структуры:

struct Node *n = malloc(sizeof(struct Node));
3 голосов
/ 05 декабря 2011
Node *c = malloc(sizeof(*c));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...