您需要编写 Haskell 代码来将这些数据结构编组为可以在 Haskell 中使用的数据结构。c2hs 工具在这方面非常有帮助:http://hackage.haskell.org/package/c2hs
虽然该工具似乎是为从 Haskell 调用 C 语言而设计的,但从某种意义上来说,它也非常有用——它允许您将复杂的 C 类型编组为 Haskell 类型。由于您公开的函数需要采用 C 类型(通常是指向复杂结构的指针),因此您可以 A) 构造适当的 C 结构,B) 使用 c2hs 提供的功能,以便在您公开的函数中将这些结构编组到 Haskell 中,以便您可以与他们一起工作。
另请注意,使用 c2hs 风格生成的工具,您不需要编组所有内容。您只需生成访问器即可查看您真正关心的 C 数据结构部分。