c 语言 循环 定义(C基本问题)
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/16 13:33:54
c 语言 循环 定义(C基本问题)
我要写的结构A中含有结构B
结构B中含有结构A怎么写啊.
我要实现下面的代码会报错
struct A
{
B b;
} ;
struct B
{
A a;
} ;
我要写的结构A中含有结构B
结构B中含有结构A怎么写啊.
我要实现下面的代码会报错
struct A
{
B b;
} ;
struct B
{
A a;
} ;
![c 语言 循环 定义(C基本问题)](/uploads/image/z/7524938-2-8.jpg?t=c+%E8%AF%AD%E8%A8%80+%E5%BE%AA%E7%8E%AF+%E5%AE%9A%E4%B9%89%EF%BC%88C%E5%9F%BA%E6%9C%AC%E9%97%AE%E9%A2%98%EF%BC%89)
C和C++不支持这种递归引用.
但如果其中有一个是指针就可以了.
如
struct B; // 这里先声明B的类型
struct A
{
B *b; // 这里必须是指针
};
struct B
{
A a; // 这里也可以是指针,如A *a;
};
再问: 只能用指针太不爽了吧
再答: 只能这么用 C/C++就是这么设计的。
但如果其中有一个是指针就可以了.
如
struct B; // 这里先声明B的类型
struct A
{
B *b; // 这里必须是指针
};
struct B
{
A a; // 这里也可以是指针,如A *a;
};
再问: 只能用指针太不爽了吧
再答: 只能这么用 C/C++就是这么设计的。