如果执行以下代码,data1的内容是什么?
struct {
int a;
char b;
}st1;
struct {
char c;
int d;
}st2;
main()
{
struct st1 data1 = {0};
struct st2 data2 = {'A',10};
data1 = data2;
}
最佳答案
这仅在两个结构具有相同类型时才有效。否则,您必须得到一个编译错误。
(如果您的编译器仍然生成可执行文件,则可以执行任何操作)。
关于c - 如果我们用=运算符而不是memcpy()分配不同的结构怎么办,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23339990/