这应该很简单。假设我们有一个不提供复制工具的图书馆提供的结构。是否有一种简单的方法可以将该结构类型的变量复制到相同类型的新变量,而无需对其每个子成员进行赋值?还是必须要具有特殊的复印功能?

最佳答案

好了,结构类型可以在C中分配:

struct SomeStruct s, d;
...
d = s;

没关系,在哪里定义。而且,无需复制“每个子成员”。您甚至从哪里得到关于逐个成员复制的想法?

当然,该分配将仅执行浅复制。如果需要深度复制,则需要库提供的复制例程。如果没有,则必须自己实施。为了做到这一点,您将需要充分了解该结构的实际深度内存组织。如果您不知道该文件(即没有记录),则很不走运-无法进行适当的深度复制。

关于c - 关于C的简单问题:复制用户定义的结构类型的变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3613898/

10-16 11:32