gpt4 book ai didi

c - 什么时候让指针指向堆上和堆栈上的结构?

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:44 24 4
gpt4 key购买 nike

<分区>

#include <stdio.h>
#include <stdlib.h>

typedef struct foo {
char* text;
int num;
} foo;

int main(void) {

foo* a = malloc(sizeof(foo));
a->text = "Something";
a->num = 4;
printf("%s %d\n", a->text, a->num);

foo b;
b.text = "Something";
b.num = 4;
foo* c = &b;
printf("%s %d", c->text, c->num);

return 0;
}

两者打印完全相同的内容。 foo* afoo* c 之间的唯一区别是每个指向的位置。应该首选哪一个?我通常看到更多的是 malloc() 但我不明白为什么。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com