我正在学习 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/