c - 如何在 FlatBuffers 架构文件中声明指针类型?

标签 c schema flatbuffers

我正在学习 FlatBuffers ,我希望在 C 中使用它们。 我想做的是为我的结构编写一个架构文件。 这是我的结构之一:

typedef struct
{
    unsigned short request_number;
    unsigned short length;
    unsigned short height;
    unsigned char   *buffer;
} CASH_RECEIPT_REQUEST;

如何在架构文件中写入指针unsigned char *buffer

最佳答案

不存储指针,而是存储它们指向的实际数据:

table CashReceiptRequest {
  request_number:ushort;
  length:ushort;
  height:ushort;
  buffer:[ubyte];      
}

如您所见,缓冲区是一个“ubyte vector ”。请注意,如果 length 是缓冲区的大小,则可以省略该字段,因为该大小已存储为 vector 的一部分。

关于c - 如何在 FlatBuffers 架构文件中声明指针类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51692255/

相关文章:

mysql自动增量和rails 4 :sql structure. sql

c++ - FlatBuffers:不支持的 union vector 将 JSON 文件转换为二进制文件时出错

c++ - 找不到生成的 header

c++ - 如何调试加载共享库

c - 我不明白 K&R 中的哈希表示例

c - 从哪里开始用 c 解决这个练习

c++ - 有人知道 C/C++ Unix 二维码库吗?

join - 如何在mongodb中加入查询?

apache - 如何以图形方式表示和操作 apache avro 架构

javascript - 是否可以使用 FlatBuffers 将序列化数据流式传输到文件中?