定义了两个结构体A 和B,然后B中定义了一个A类型的指针,那么我要怎么用这个B中属于A类型的指针呢

 我来答
hzl880201
2012-07-09 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:188
采纳率:100%
帮助的人:114万
展开全部
B中定义了A类型的指针,那么这个指针就是结构体B中的一个成员,定义结构体B的对象,或指针对象,访问它的成员就可以了,访问结构体中的其他成员也是如此.
帐号已注销
2012-07-09 · TA获得超过527个赞
知道小有建树答主
回答量:307
采纳率:0%
帮助的人:167万
展开全部
就这样,很简单:

struct A
{
int i;
};
struct B
{
int i;
struct A* pa;
};
int main( int argc, char* argv[] )
{
struct A a;
struct B b;
b.pa = &a;
b.pa->i=10;
printf("%d\n", b.pa->i);
return 0;
}
追问
它显示 assignment from incompatible pointer type...这个说明啥呢?查的时候是说结构体不对的意思。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
821162922
2012-07-09 · TA获得超过333个赞
知道答主
回答量:130
采纳率:0%
帮助的人:64.4万
展开全部
这个属于内嵌对象!伪代码如下!
class a
{
};
class b
{
a 对象;
};
b 对象C
直接使用即可,C->对象
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
恶灵的加护
2012-07-09 · TA获得超过969个赞
知道小有建树答主
回答量:492
采纳率:0%
帮助的人:488万
展开全部
结构体不是类,所以没有权限的问题。直接用就行了:
比如:
A a;
B b;
b.pointer = &a;

B中A的指针是pointer,A中有个成员叫member

b.pointer->member就可以直接访问到menber。
更多追问追答
追问
我定义是这样的
struct A{
int i;
struct A *next;
}A,*A;
struct B{
int j;
struct B *next;
A *aa;
}B,*B;
我要怎么用B *p,中的A类型的指针呢
追答
从写法上来说,访问类成员的方法有两种:
直接结构对象加一点后面跟成员名,
或者指向结构的指针加 -> 后面跟成员名。
上面这个用 p->aa 就可以得到指向A的指针aa,
然后如果要访问A中的 i 的话,可以直接用p->aa->i。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乘公交看奥运
2012-07-09
知道答主
回答量:7
采纳率:0%
帮助的人:3.6万
展开全部
假设A类型的标示符为next,B类型的变量是btype,那么在C语言中的访问形式是:btype->next或者btype.next
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式