python处理C语言结构体---struct

更新时间:2023-07-19 04:19:44 阅读: 评论:0

python处理C语⾔结构体---struct
简介
python中的struct主要⽤来处理C结构数据的,读⼊的时候先转换为Python的字符串类型,然后再转换为Python的结构化类型,⽐如元组。
主要有pack()和unpack()两个⽅法
主要⽅法
1、pack()
按照给定的格式(fmt),把数据封装成字符串(实际上是类似于c结构体的字节流)
struct.pack(cfmt,v1,v2,…)
烧窑
土地开发v1,v2,…为C结构数据
cfmt为要包装成的格式
eg:
齿冷的意思
2、unpack()
按照给定的格式(fmt)解析字节流string,返回解析出来的tuple
struct.unpack(pfmt,aa)
解包
上进的图片pfmt为python的类型
eg:
3、calcsize()
计算给定的格式(fmt)占⽤多少字节的内存
clacsize(fmt)
python类型与C类型
Format    C type python type STANDARD SIZE x pad type no value
c char string of length 11
中果皮b signed char integer1存储卡无法格式化
B unsigned char integer1
_Bool bool1
h short integer2
H unsigned short integer2
i int integer4
I unsigned int integer4
l long integer4制宪
L unsigned long integer4
q long long integer8
q long long integer8 Format    C type python type STANDARD SIZE Q unsigned long long integer8
f float float4
d doubl
e float8
s char[]string
p char[]string
P void *integer
⼤⼩端对齐⽅式
在Format string的⾸位,有⼀个可选字符来决定⼤端和⼩端
符号对齐⽅式
比赛的英文@本机的字符顺序(⼤端或⼩端,默认)
=本机的字符顺序(⼤端或⼩端,默认)
<⼩端
>⼤端
!⼤端
如int i = 1
int占4个字节,每个字节8bit
则⼩端顺序的话为:0000 0000 0000 0000 0000 0000 0000 0001(共32bit)
⼤端顺序为:0000 0001 0000 0000 0000 0000 0000 0000

本文发布于:2023-07-19 04:19:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1087263.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:类型   格式   字符   字节   结构   土地   本机
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图