python - 如何在C(服务器)中收到来自python(客户端)的 "unpack"数据包?

标签 python c sockets pack unpack

我有一个 python 客户端,它打包一些数据来执行以下操作:

#MOUNT UDP PACKET (unsigned char type, 5 char ext, 50 char user)
pqtUDP = pack('B5s50s', REGISTER, ext, user) 

现在我在 C 客户端上收到该数据,因此要读取正确的数据,我想我必须将其解压并将其保存在不同的变量中,不是吗?我怎样才能用C语言做到这一点?

我需要从收到的数据中读取 REGISTER、分机和用户。

最佳答案

类似的东西应该在 C: 中工作

// assumes input packet is [const char* data]
unsigned char reg;
char ext[6];
char user[51];
reg = data[0];
memcpy(ext, data + 1, 5);
ext[5] = 0; // set null terminator
memcpy(user, data + 6, 50);
user[50] = 0; // set null terminator

关于python - 如何在C(服务器)中收到来自python(客户端)的 "unpack"数据包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23225468/

相关文章:

python - Pandas - 创建类似于 pd.get_dummies 的多列

python - 在 App Engine 中处理大型云存储文件

python - 使用mysql syncdb错误

python - 错误 : [Errno 111] Connection refused - Python, Selenium

python - 与 PostgreSQL 数据库的 SQLAlchemy/psycopg2 连接是否加密

c - 在 c 中使用指针和 malloc 时出现多个错误消息

c - 使用 C 在 Linux 上查找任意文件的设备或挂载点

c - 绑定(bind)到 C 中的特定 IP for ubuntu

C++ NetLink 套接字错误

c - 如何在没有 ./a.out 命令的情况下执行我的程序?