将非标准数据类型写入C

时间:2016-10-31 07:00:51

标签: c embedded bits

我有一个包含多种int数据类型的C结构;我移动并屏蔽此结构中的数据类型以生成73位有序数据。我需要使用fprintf将这些73位的多行写入格式为“0x73bits”的txt文件中。

每次只需几行代码就必须是73位数据。我可以使用64位然后使用9位进行操作。但它很乱。

有人能建议更干净的专业方法吗?

1 个答案:

答案 0 :(得分:2)

您不能将位写入文件,只能写入字节。你必须在文件的末尾留下空位。在内存中你的结构用字节表示而不是位。

您可以将位数据转换为字符串,这会浪费磁盘空间,但可能是您想要的。这是打印二进制字符串的示例:printf binary

这是fprintf到文件的示例:fprintf to a file