关于 phone.py 里的 "<4si" 和 "<iiB" 含义的疑问
qq345386817 opened this issue · 3 comments
qq345386817 commented
你好,请问代码里的 "<4si" 和 "<iiB" 是什么意思?这个地方看不太懂。
ls0f commented
参考python的struct模块
qq345386817 commented
在 Python 代码中,<4si 和 <iiB 是类型约束。它们表示变量或函数的参数或返回值的类型必须是特定的类型。
<4si 表示变量或函数的参数或返回值必须是 4 字节的整数。i 表示整数,4 表示字节数。
<iiB 表示变量或函数的参数或返回值必须是两个 2 字节的整数。i 表示整数,2 表示字节数,B 表示大端字节序。
是这样吧?谢谢
ls0f commented
-
<4si
:<
表示使用小端字节序(little-endian)。4s
表示一个长度为4的字节字符串。i
表示一个有符号整数(通常为4个字节)。
因此,
<4si
表示一个小端字节序的结构,其中包含一个长度为4的字节字符串和一个有符号整数。 -
<iiB
:<
表示使用小端字节序(little-endian)。i
表示一个有符号整数(通常为4个字节)。i
表示一个有符号整数(通常为4个字节)。B
表示一个无符号字符(1个字节)。
因此,
<iiB
表示一个小端字节序的结构,其中包含两个有符号整数和一个无符号字符。