【问题标题】:Convert unsigned char array into uint8_t array?将 unsigned char 数组转换为 uint8_t 数组?
【发布时间】:2017-07-28 10:57:42
【问题描述】:

我需要将 unsigned char 数组转换为 unit8_t 数组,也许有人知道该怎么做?

我试着在网上找资料,可惜没有成功。

:)

【问题讨论】:

  • 没有什么可以转换的。 如果 uint8_t存在,与unsigned char相同。或者反过来:如果unsigned char 超过8 位,则没有uint8_t 可用。

标签: c unsigned-char


【解决方案1】:

那么,你试过uint8_t* myuint8array = (uint8_t*)myuchararray; 吗?

【讨论】:

    【解决方案2】:

    你有

    unsigned char arr[size];
    

    你想要

    uint8_t arr[size];
    

    uint8_t 简单定义为

    typedef unsigned char uint8_t;
    

    :-)

    【讨论】:

    • 或者根本没有定义,以防char超过8位。
    • 一个字符何时可能超过 8 位?
    • @Robert - 例如可以是 9 位 on a 36-bit computer
    • 字符 != char。然后,答案是“超过 8 位时”。是的,存在这样的平台,但出于显而易见的原因,它们无法提供uint8_t
    • 这对我来说是个完整的消息,我以前从未听说过。谢谢,将立即阅读。 :-)
    猜你喜欢
    • 2019-10-14
    • 2011-10-23
    • 2013-05-16
    • 2021-07-11
    • 2019-11-21
    • 2012-04-29
    • 1970-01-01
    • 2013-09-01
    • 2012-11-04
    相关资源
    最近更新 更多