gpt4 book ai didi

C 中的 Python struct.unpack 等价物

转载 作者:太空宇宙 更新时间:2023-11-04 02:38:07 25 4
gpt4 key购买 nike

我在 python 中有一个

string lenght = 4

,我可以解压缩以获得一些值。

在 python 和 C 中是否有这个函数的等价物?

最佳答案

在C语言中,没有这种“打包”的概念。每当你有一个字符缓冲区,比如

char buf[128];

将其视为字符串还是复杂的数据结构由您决定。最简单的方法是定义一个 struct 并从数组中来回复制数据。

struct MyStruct{
int data1;
int data2;
};

char buf[sizeof(struct MyStruct)];
struct MyStruct myStruct;
myStruct.data1 = 1;
myStruct.data2 = 2;
memcpy(buf, &myStruct, sizeof(struct MyStruct));

请注意,这里可能会发生一些包装/填充。例如,如果你的结构中有一个 short,编译器无论如何都可以使用 4 个字节。当您必须使用指针时,这也会失败,例如结构中的 char* 字符串。

关于C 中的 Python struct.unpack 等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34918608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com