【问题标题】:Create data type with malloc() [closed]使用 malloc() 创建数据类型 [关闭]
【发布时间】:2013-10-19 13:56:27
【问题描述】:

在 C 语言中,我希望创建一个只有 1 个字节的数据类型(如 int 或 float)。我怎么可能做到这一点?我已经尝试过 malloc(),但没有按照我尝试的方式工作。

你能帮我一下吗?

例子:

sizeof(int) = 4 bytes
sizeof(char) = 1 byte
sizeof(float) = 4 bytes
sizeof(myDataType) = 1 byte

【问题讨论】:

  • 你尝试了什么?方法不多,但可以做到。
  • “创建数据类型”是什么意思?分配存储空间?声明某种类型,它只占用一个字节?
  • 你不是在搜索类型“char”(1byte)吗?
  • @TelmoVaz:您已经有一个大小为 1 字节的标准数据类型:uint8_t。愉快地使用这个而不是 mallocing 并忘记稍后释放它。
  • @legends2k 标准的 1 字节类型是 char。没有什么能保证uint8_t 占用一个字节。

标签: c memory types malloc


【解决方案1】:

有这样的数据类型。 char 始终保证为一个字节长。如果您想要该类型的另一个名称,只需使用 typedef 并基于 char 创建一个新类型。

更详细的解释可以看这个问题:Are there machines, where sizeof(char) != 1, or at least CHAR_BIT > 8?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    相关资源
    最近更新 更多