求教联合体union内是否可以声明定义指针类成员,不同类型的指针成员长度是如何决定的
求教联合体union内是否可以声明定义指针类成员,不同类型的指针成员长度是怎么决定的?
如题,我想在教联合体union内是否声明定义指针类成员,那么我的union分配的长度是多少?我要方位指针成员的方式如
union{
int * i;
char * ch;
}x;
*x.i=1;
*x.ch="hello";
我要访问“hello”中的“o”,该怎么访问?
------解决方案--------------------
指针长度都是4个字节的..
------解决方案--------------------
int main()
{
union{
int * i;
char * ch;
}x;
x.i=1;
x.ch= "hello";
printf("string=%c\n",x.ch[4]);
}
------解决方案--------------------
int main()
{
union{
int * i;
char * ch;
}x;
x.i=1;
x.ch= "hello";
printf("string=%c\n",*(x.ch+4));
}
如题,我想在教联合体union内是否声明定义指针类成员,那么我的union分配的长度是多少?我要方位指针成员的方式如
union{
int * i;
char * ch;
}x;
*x.i=1;
*x.ch="hello";
我要访问“hello”中的“o”,该怎么访问?
------解决方案--------------------
指针长度都是4个字节的..
------解决方案--------------------
int main()
{
union{
int * i;
char * ch;
}x;
x.i=1;
x.ch= "hello";
printf("string=%c\n",x.ch[4]);
}
------解决方案--------------------
int main()
{
union{
int * i;
char * ch;
}x;
x.i=1;
x.ch= "hello";
printf("string=%c\n",*(x.ch+4));
}