C语言,请问如何将结构体中的结构体拷贝到内存

问题是这样的,比如结构体B是嵌套在结构体A中的,我用memcpy将A拷贝到内存,但是发现A.B的内容没有被拷贝进去,请问如何解决... 问题是这样的,比如结构体B是嵌套在结构体A中的,我用memcpy将A拷贝到内存,但是发现A.B的内容没有被拷贝进去,请问如何解决 展开
 我来答
tattackor
推荐于2018-04-13 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:885万
展开全部
1、可以直接用=符号拷贝,但它有一个条件,这里的赋初值不别的数据类型(如 int a;a=5;)它必须是对结构体中的每个成员以此赋值的。将一个结构体变量的值直接赋给另外一个结构体变量的时候,这两个结构体必须是相同结构体名。

2、不同类型的话,也可以用,一般在做通信方面用的比较多。因为处理协议。发包方按照某个协议结构体填充后,发送;接收方收到时其实是一个很长的字符串。那接收方一般用这种方法:结构体 = (结构体)&字符串, 当然接收方的结构体跟发送方的结构体不一定一样,都是根据协议来的。
油菜花零
2012-08-27 · TA获得超过881个赞
知道小有建树答主
回答量:501
采纳率:50%
帮助的人:334万
展开全部
不会的,在实例化A的时候会把A中的属于B部分的一起申请内存
你是通过什么方法来发现A.b没有拷贝进去的?
有代码最好贴出来,大家可以一起分析。
你这样直接说结果别人也没办法的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaosi_show
2012-08-27 · 超过12用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:33.2万
展开全部
你把指向结构体的指针拷贝到内存就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
poseidon_k
2012-08-27 · TA获得超过2580个赞
知道小有建树答主
回答量:1223
采纳率:0%
帮助的人:311万
展开全部
这不可能啊,能不能把两个结构体的定义贴上来看看?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式