小编Dee*_*ary的帖子

结构的指针声明是否会为其成员分配内存?

检查turbo c ++上的程序图像

程序输出

#include< stdio.h>

struct node  {
    int data;
};

int main() {

    struct node *ptr;

    ptr->data=3;
    printf("%d",ptr->data);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:3

我的问题是,即使我没有声明结构节点的实例.

例如struct node n;

我还没有使用malloc为ptr分配内存,它仍然为ptr-> data分配空间.为什么?它不应该只为堆栈上的地址ptr分配内存.

并且在堆栈或堆上分配数据字段的内存.---------

c pointers

2
推荐指数
1
解决办法
106
查看次数

标签 统计

c ×1

pointers ×1