免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1521 | 回复: 2
打印 上一主题 下一主题

请问如何对一个内存段赋值? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-03-28 15:24 |只看该作者 |倒序浏览
本帖最后由 yqzq 于 2013-03-28 15:26 编辑

小弟在做包处理,遇到点问题
比如有个包缓冲如下
z = 1024 * b'\x11'

我想修改缓冲z中  偏移 10 - 14这4个字节,给他赋一个整型变量该怎么做?
i=100
z[10:14] = i  ??
显然不行

z[10:14] = struct.pack("!I", i)
仍然不行..



谢谢

论坛徽章:
0
2 [报告]
发表于 2013-03-28 17:19 |只看该作者
z[10:14] = struct.pack("!I", i)

你首先要确认一下 struct.pack("!I", i)的长度 是四,

然后,你对字符串不能这样切片修改


res=z[:10]+ struct.pack("!I", i)+z[:14]

论坛徽章:
0
3 [报告]
发表于 2013-03-28 17:36 |只看该作者
非常感谢!!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP