我正在开发一个服务器(用 Python 实现)客户端(用 C 实现)应用程序。我想使用服务器端的 struct 模块(Python)解压缩从 C 客户端接收到的原始字节。
我的 C 结构(来自 C 客户端):
typedef struct lokesh{
int command;
union
{
struct{
int data[100];
int ttl[100];
};
struct{
char config[256];
};
};
} mystructdata;
在服务器端解包(Python):-
import struct
data,address=socket.recvfrom(1024)
result=struct.unpack('<i 2048s',data)
print(result[0])
但我收到一个错误:-
struct.error: unpack require object of size 2052
我认为问题出在我的 unpack 方法的格式字符串'<i 2048s'
参数中。
编辑 :-
现在,我已经用格式字符串替换
'<i 2048s'
了格式字符串'<i 256s'