L=(linklist)malloc(sizeof(struct lnode))这个公式什么意思?

2024-11-01 15:27:13
有2个网友回答
网友(1):

为你的结点L动态分配内存

你前面结构体是否这样定义的

typedef struct lnode

{ ...数据项

}*linklist;

函数的原型extern void *malloc(unsigned int num_bytes)

(linklist)是你定义的这种struct lnode这种类型的指针,也可以写成(struct lnode*)malloc(...)

因为如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL

其中sizeof是取你定义的结构体取其总的字节数,即malloc后的括号内是要分内内存空间的大小

用sizeof函数获取

网友(2):

为你的结点L动态分配内存
你前面结构体是否这样定义的
typedef struct lnode
{ ...数据项
}*linklist;
函数的原型extern void *malloc(unsigned int num_bytes)
(linklist)是你定义的这种struct lnode这种类型的指针,也可以写成(struct lnode*)malloc(...)
因为如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL

其中sizeof是取你定义的结构体取其总的字节数,即malloc后的括号内是要分内内存空间的大小
用sizeof函数获取

而整个分配的返回值是你定义结点*L的指针 也就是L

有问题HI我~
望采纳~