Closed. This question needs to be more focused 。它目前不接受答案。
想改善这个问题吗?更新问题,使其仅通过 editing this post 关注一个问题。
7年前关闭。
Improve this question
我已经阅读了 Beej 的指南,以及我能够在互联网上找到的许多其他资源,但我觉得我在序列化和反序列化方面遗漏了一些东西。我可以通过在服务器和客户端发送/接收的明确结构中进行硬编码来对其进行散列,但我想知道是否有任何我可以查看的资源可以帮助我更有效地或一般地进行序列化,某些东西这将帮助我可能在其他程序中重用我的一些序列化代码,而不必为我想要传递的每个数据结构编写定制的序列化函数?
想改善这个问题吗?更新问题,使其仅通过 editing this post 关注一个问题。
7年前关闭。
Improve this question
我已经阅读了 Beej 的指南,以及我能够在互联网上找到的许多其他资源,但我觉得我在序列化和反序列化方面遗漏了一些东西。我可以通过在服务器和客户端发送/接收的明确结构中进行硬编码来对其进行散列,但我想知道是否有任何我可以查看的资源可以帮助我更有效地或一般地进行序列化,某些东西这将帮助我可能在其他程序中重用我的一些序列化代码,而不必为我想要传递的每个数据结构编写定制的序列化函数?
最佳答案
Google Protobuf 可能对您有用,特别是如果您可能想考虑使用多种编程语言实现的跨平台应用程序。
Protobuf 已经实现了序列化,因此您可以使用它。
由于上面的链接是针对 c++ 的,this 是 c 挂件。
但也有许多其他语言的实现,如 Python、PHP、Java 和许多其他语言!
另一个 C Protobuf 库是 nanoPB ,感谢 πάντα ῥεῖ 指出这一点。这个好像很稳定。
另一种方法是使用 another serialisation library 来序列化和反序列化您的数据。
最后一种可能的方法是自己实现序列化,就像在这个 SO question 上描述的那样。
关于c - 套接字编程 - 序列化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22141855/