社区
C语言
帖子详情
memcpy 拷贝结构体问题
jmac
2009-03-26 11:33:26
如
struct a
{
int uid;
char name[20];
};
struct b
{
int id;
a *p;
}
现有一个 void data[512]的数据 拷贝到结构体 b, 其中 结构b中包括5个 a
这个怎么 拷?
...全文
288
8
打赏
收藏
memcpy 拷贝结构体问题
如 struct a { int uid; char name[20]; }; struct b { int id; a *p; } 现有一个 void data[512]的数据 拷贝到结构体 b, 其中 结构b中包括5个 a 这个怎么 拷?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hai040
2009-03-26
打赏
举报
回复
b ob;
ob.id = *(int*)data;
//指针
ob.p = (a*)((int*)data + 1);
//copy
ob.p = malloc(...)
memcpy(ob.p, (int*)data+1);
hust_terry
2009-03-26
打赏
举报
回复
你这种情况只能一个变量一个变量的拷
jmac
2009-03-26
打赏
举报
回复
void data[512] 就是 1个结构体b拷进去的, 其中 b 中包括 5个 a
猫已经找不回了
2009-03-26
打赏
举报
回复
void data[512]是什么数据?
要要么就直接纯指针操作,
要么就乖乖的一个个结构体成员赋值
jmac
2009-03-26
打赏
举报
回复
那这个怎么转换哦?
hai040
2009-03-26
打赏
举报
回复
没法直接memcpy
m2002g
2009-03-26
打赏
举报
回复
struct b
{
int id;
a *p;
}
因为第二个变量是个指针所以没办法直接拷,只能给p赋值
beyond071
2009-03-26
打赏
举报
回复
复习了
快速复制
结构体
变量和类实例
用内存
拷贝
,快速复制
结构体
变量和类的实例,与
结构体
、类的成员变量无关
C/C++
结构体
赋值方法[源码]
本文详细介绍了C/C++中
结构体
赋值的多种方法,包括成员逐个赋值、使用初始化列表、指定初始化器、
结构体
赋值、
memcpy
函数、深
拷贝
、构造函数(C++特有)以及memset函数初始化。每种方法均通过示例代码说明其具体用法和注意事项,帮助开发者根据实际需求选择最合适的赋值方式。文章特别强调了浅
拷贝
与深
拷贝
的区别,以及指针成员的内存管理
问题
,为C/C++程序员提供了全面的
结构体
赋值指南。
C语言中
memcpy
函数的用法详解
主要介绍了C语言中
memcpy
函数的用法详解的相关资料,需要的朋友可以参考下
C语言 2道关于
结构体
的题 源代码
http://ask.csdn.net/questions/677049
问题
的回答,一共2个程序。
memcpy
函数详解[可运行源码]
本文详细介绍了C语言中的内存操作函数
memcpy
(),包括其核心功能、函数原型、伪代码实现、使用场景及注意事项。
memcpy
()能够高效地将指定长度的数据从源内存区域复制到目标内存区域,适用于数组、
结构体
等多种数据类型的复制。文章还强调了使用时的注意事项,如内存重叠、内存边界和指针有效性等
问题
,并提供了多个示例代码,帮助读者更好地理解和应用该函数。
C语言
70,040
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章