#ifdef VALUE
Temp temp;
#endif
union
{
struct
{
int tempNum;
int tempGroup;
}C;
struct
{
char tempClass;
char tempFlie[10];
}D;
}B;
}A;
在上面的嵌套联合结构体中,如果分别想引用C结构体变量和D结构体变量中的成员,该如何引用>
可以写成如下形式吗?
--->>A.B.C.tempNum;
--->>A.B.D.tempFile;
这样可以吗>
如果要对其成员进行赋值,可以写成如下形式吗>
--->>A.B.C.tempNum = 0;
--->>A.B.D.tempFile = {0};
这样可以吗>
敬请高人指点,谢谢
14 个解决方案
#1
就是这样,不过suruct C and B can not be used same time.
#2
--->>A.B.C.tempNum;
--->>A.B.D.tempFile;
这样可以吗>
===================
可以啊。
--->>A.B.D.tempFile;
这样可以吗>
===================
可以啊。
#3
没有问题啊,难道楼主不会写个程序自己测试一下?
#4
E...最前面有个关键字typedef!那样应该就不可以了。
#5
如果A是一个结构体变量的话,那么可以写那样的形式,也可以那样赋值。
#6
jiajun2001(嘉俊) ,你和偶一样刚刚没注意到关键字typedef!哇哈哈 ^_^
#7
好像不可以哦
A在这里已经是一个类型名称了,除非你里边的定义是静态的.
否则必须
A对象.B.C.tempGroup
A在这里已经是一个类型名称了,除非你里边的定义是静态的.
否则必须
A对象.B.C.tempGroup
#8
呵呵,不好意思,尝试了一下,好像属性即使是静态的也不行....
道歉.
哪就只能是A对象的方式了,关注
道歉.
哪就只能是A对象的方式了,关注
#9
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
不能对数组名进行赋值操作
#10
typedef struct A{
lz笔误?是不是应该这样的??
typedef struct {
。。。
}A;
如果是typedef struct {...}A;,则
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
lz笔误?是不是应该这样的??
typedef struct {
。。。
}A;
如果是typedef struct {...}A;,则
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
#11
非常感谢各位高人的指点.
烦请再问一下,
那就是说只能在A结构体中引用一个成员,用成员的方式引用了,是吗?
就比如
A tempA;
tempA.B.C.tempGroup;
tempA.B.D.tempFile;
这样可以吗>
那赋值就是
tempA.B.C.tempGroup = 0;
tempA.B.D.tempFile = {0};
这样可以吗>
谢谢各位高人指教.
烦请再问一下,
那就是说只能在A结构体中引用一个成员,用成员的方式引用了,是吗?
就比如
A tempA;
tempA.B.C.tempGroup;
tempA.B.D.tempFile;
这样可以吗>
那赋值就是
tempA.B.C.tempGroup = 0;
tempA.B.D.tempFile = {0};
这样可以吗>
谢谢各位高人指教.
#12
不好意思,没注意写错了.谢谢tailzhou(尾巴) ( ) 的指出.那引用那些写可可以吗
#13
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
A.B.C.tempNum = 0; //可以
A.B.D.tempFile = {0}; //不可以
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
A.B.C.tempNum = 0; //可以
A.B.D.tempFile = {0}; //不可以
#14
A.B.D.tempFile 引用方式是对的,但赋值的方式不对
memset(A.B.D.tempFile , 0, sizeof(A.B.D.tempFile ));
memset(A.B.D.tempFile , 0, sizeof(A.B.D.tempFile ));
#1
就是这样,不过suruct C and B can not be used same time.
#2
--->>A.B.C.tempNum;
--->>A.B.D.tempFile;
这样可以吗>
===================
可以啊。
--->>A.B.D.tempFile;
这样可以吗>
===================
可以啊。
#3
没有问题啊,难道楼主不会写个程序自己测试一下?
#4
E...最前面有个关键字typedef!那样应该就不可以了。
#5
如果A是一个结构体变量的话,那么可以写那样的形式,也可以那样赋值。
#6
jiajun2001(嘉俊) ,你和偶一样刚刚没注意到关键字typedef!哇哈哈 ^_^
#7
好像不可以哦
A在这里已经是一个类型名称了,除非你里边的定义是静态的.
否则必须
A对象.B.C.tempGroup
A在这里已经是一个类型名称了,除非你里边的定义是静态的.
否则必须
A对象.B.C.tempGroup
#8
呵呵,不好意思,尝试了一下,好像属性即使是静态的也不行....
道歉.
哪就只能是A对象的方式了,关注
道歉.
哪就只能是A对象的方式了,关注
#9
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
不能对数组名进行赋值操作
#10
typedef struct A{
lz笔误?是不是应该这样的??
typedef struct {
。。。
}A;
如果是typedef struct {...}A;,则
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
lz笔误?是不是应该这样的??
typedef struct {
。。。
}A;
如果是typedef struct {...}A;,则
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
#11
非常感谢各位高人的指点.
烦请再问一下,
那就是说只能在A结构体中引用一个成员,用成员的方式引用了,是吗?
就比如
A tempA;
tempA.B.C.tempGroup;
tempA.B.D.tempFile;
这样可以吗>
那赋值就是
tempA.B.C.tempGroup = 0;
tempA.B.D.tempFile = {0};
这样可以吗>
谢谢各位高人指教.
烦请再问一下,
那就是说只能在A结构体中引用一个成员,用成员的方式引用了,是吗?
就比如
A tempA;
tempA.B.C.tempGroup;
tempA.B.D.tempFile;
这样可以吗>
那赋值就是
tempA.B.C.tempGroup = 0;
tempA.B.D.tempFile = {0};
这样可以吗>
谢谢各位高人指教.
#12
不好意思,没注意写错了.谢谢tailzhou(尾巴) ( ) 的指出.那引用那些写可可以吗
#13
YeTimmy(#我顶你个肺#) ( ) 信誉:100 2006-08-07 14:09:00 得分: 0
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
A.B.C.tempNum = 0; //可以
A.B.D.tempFile = {0}; //不可以
除了tempFlie外,其他的都可以
不能对数组名进行赋值操作
A.B.C.tempNum = 0; //可以
A.B.D.tempFile = {0}; //不可以
#14
A.B.D.tempFile 引用方式是对的,但赋值的方式不对
memset(A.B.D.tempFile , 0, sizeof(A.B.D.tempFile ));
memset(A.B.D.tempFile , 0, sizeof(A.B.D.tempFile ));