两种情况下指针的内存分配是否相同
struct_datatype * p=NULL;
struct_datatype * p=malloc;
除了从堆栈和堆分配内存之外??
最佳答案
在第一种情况下,指针被初始化为指向地址 0,因此如果访问指针指向的数据,则会出现 0 指针异常,因为指针不指向可访问的内存位置。< br/>
第二种情况,p=(struct_datatype *)malloc(sizeof(struct_datatype));内存已分配并分配给指针,因此您可以通过 p 访问该内存,例如如果 x 是结构体中的 int 字段,则可以通过 p->x=123
关于c - 两种情况下指针的内存分配相同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13914704/