linuxlife123 发表于 2015-06-08 22:17

有个结构体赋值和转换的问题请教一下

有个结构体赋值和转换的问题请教一下,代码如下:

struct A {
struct a1
inta2
union {
   long a3
   void *a4
}

}

struct B {
   struct b1
intb2
union {
   long b3
   void *b4
}
}

struct C
{
struct c1;
struct c2;
}

void func_x1(void)
{
struct c*c
   struct A *a
   
   给结构体c 赋值;
   a->a4 = c;
    func_x2(a)
}

void func_x2(void *data)
{
struct B *b;
struct c *c;

b = data;
c = b->b4;
}

问题:a赋值给void指针data,这个步骤是没有问题的,然后 data在赋值给结构体b以后
然后再把 b->b4赋值给结构体c,此时c的值和 函数func_x1里面c的值还能保持一样吗 ?
页: [1]
查看完整版本: 有个结构体赋值和转换的问题请教一下