[英]nested structs/linked lists in c
我的問題是如何訪問列表結構的節點結構中的num變量? 我嘗試了兩種方法,但都沒有用? 我只是好奇為什么會這樣。 謝謝任何幫助我知道這是新手問題的人。 我對C和堆棧溢出很陌生,希望我可以從該網站中學到很多。
#include<stdio.h>
#include<stdlib.h>
typedef struct node
{
int num;
struct node *next;
} node;
typedef struct list
{
node *ptr;
struct list *next;
} list;
int main()
{
list *p = malloc(sizeof(list));
//p->ptr->num = 5;
node *x;
x = p->ptr;
//x->num = 5;
return 0;
}
什么你試圖做的是正確的,但問題是,你雖然對分配的內存list
,沒有內存分配給node
居住內部list
。
list *p = malloc(sizeof(list));
//p->ptr->num = 5;
node *x;
p->ptr = malloc(sizeof(node));
x = p->ptr;
x->num = 5;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.