-3
我想将结构x复制到另一个具有嵌套x的结构y。复制到嵌套结构在C
例如:
#define DATASIZE 128
typedef struct {
char data[DATASIZE];
} x_TYPE;
typedef struct {
int number;
x_TYPE nested_x;
enum boolean error;
} y_TYPE;
/* ---- Values for the type field in xy_union ---- */
#define TYPE_IS_X 0;
#define TYPE_IS_Y 1;
typedef struct {
union { /* structure containing x_object */
x_TYPE x_object; /* or y_object as a union */
y_TYPE y_object;
} u;
int type; /*One of: TYPE_IS_X, TYPE_IS_Y */
} XY_TYPE;
这是怎么了我目前复制:
copyXY(XY_TYPE *xx)
{
XY_TYPE *yy; /* assume this is allocated already */
yy->u.y_object.nested_x = *xx; /* ERROR LINE */
return 0;
}
我得到一个编译器错误:错误:不兼容的类型分配从类型类型“x_TYPE“时XY_TYPE ”。
请让我知道是否有人知道为什么会发生这种情况。
我不明白你想要做什么。 – Dariusz
你在整个地方继续使用“x”的方式令人困惑。 – cnicutar
你的伪代码是**可怕的**(例如,没有定义类型'x';有一个'x_TYPE',但它是相同的吗?还有'y_object',我假设它是类型'y_TYPE'而不是'y'不包含'x_object')。如果您向我们提供*实际*代码来证明您认为不应得到的错误,我们可能会提供帮助。 –