gpt4 book ai didi

c - 在 C 中分配结构的指针实例

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

现在我从这篇文章中了解到 assigning one struct to another我可以将一个结构变量分配给另一个相同类型的变量,并且会发生复制。

struct Test t1;
struct Test t2;
t2 = t1;

但如果我这样做呢?

struct Test *t1;
struct Test *t2;
t1 = malloc(sizeof(struct Test));
t2 = malloc(sizeof(struct Test));
//assign t1 and t2's fields some data
*t2 = *t1;

在这种情况下会发生相同的 memcpy 吗?

最佳答案

以下

*t2 = *t1;

确实会进行浅拷贝。基本上,指针上的 * 运算符就好像您在使用指向的值一样。

但是一定要分配内存并为它们定义值,否则你会得到未定义的行为。

关于c - 在 C 中分配结构的指针实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22037912/

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