在C ++中将4个字符转换为int

Davlog

我必须从文件中读取10个字节,最后4个字节是无符号整数。但是我得到了一个11个字符长的char数组/指针。如何将最后4个字节(末尾没有零终止字符)转换为无符号整数?

//pesudo code
char *p = readBytesFromFile();
unsigned int myInt = 0;
for( int i = 6; i < 10; i++ )
    myInt += (int)p[i];

那是对的吗?对我来说似乎不正确。

马克·A

以下代码可能有效:

myInt = *(reinterpret_cast<unsigned int*>(p + 6));

iff:

  • 没有对齐问题(例如,在GPU内存空间中,如果未提供某些保证,则很有可能会崩溃)。
  • 您可以保证系统字节顺序与存储数据的顺序相同
  • 你可以肯定的是sizeof(int) == 4,这是不是到处保证

如果不是,如Dietmar建议的那样,您应该遍历数据(根据字节序向前或向后),然后执行类似的操作

myInt = myInt << 8 | static_cast<unsigned char>(p[i])

这是对齐安全的(应该在每个系统上)。仍要注意第1点和第3点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在C ++中将一个字符转换为数组字符

来自分类Dev

在C ++中将单个字符转换为小写-tolower返回一个整数

来自分类Dev

在C ++中将字符串拆分为4个字符

来自分类Dev

typcast不会将整个字符串转换为int(在C中)

来自分类Dev

如何在Unity(C#)中将字符串列表转换为单个字符串

来自分类Dev

如何在C ++中将字符串数组转换为字符串类型,如将每个元素连接成一个字符串,并在字符串上使用子字符串?

来自分类Dev

将C数组中的一个字符转换为大写会给出C4244警告

来自分类Dev

在C中将一个字符与另一个字符相乘

来自分类Dev

在C#中的字符串中将多个字符替换为多个值

来自分类Dev

在C#中将多个字符替换为字符串中的多个值

来自分类Dev

如何在C ++中将字符串转换为int?

来自分类Dev

在 C 中将字符串转换为 int

来自分类Dev

在 C 中将字符数组转换为 int 是否安全?

来自分类Dev

如何用C将两个字符交换为一个字符?

来自分类Dev

如何用C将两个字符交换为一个字符?

来自分类Dev

在C ++ 11中将一百万个字符串映射到int

来自分类Dev

C#将所有出现的字符替换为一个字符

来自分类Dev

C#将所有出现的字符替换为一个字符

来自分类Dev

连接单个字符并转换为c ++中的组合小数

来自分类Dev

使用 strchr 在 c 中的 4 个字符串中搜索一个字符

来自分类Dev

在C中将int转换为int

来自分类Dev

在C中将int转换为int

来自分类Dev

C ++中的0个字符

来自分类Dev

C中的2个字符

来自分类Dev

我有1个字符串xml,我想将其转换为C#类,该怎么办?

来自分类Dev

C将一个字符数组中的一个字符替换为另一个

来自分类Dev

如何在C中将字符串转换为单个字母char

来自分类Dev

从C中的字符串中提取最后4个字符

来自分类Dev

从C中的字符串中提取最后4个字符

Related 相关文章

  1. 1

    如何在C ++中将一个字符转换为数组字符

  2. 2

    在C ++中将单个字符转换为小写-tolower返回一个整数

  3. 3

    在C ++中将字符串拆分为4个字符

  4. 4

    typcast不会将整个字符串转换为int(在C中)

  5. 5

    如何在Unity(C#)中将字符串列表转换为单个字符串

  6. 6

    如何在C ++中将字符串数组转换为字符串类型,如将每个元素连接成一个字符串,并在字符串上使用子字符串?

  7. 7

    将C数组中的一个字符转换为大写会给出C4244警告

  8. 8

    在C中将一个字符与另一个字符相乘

  9. 9

    在C#中的字符串中将多个字符替换为多个值

  10. 10

    在C#中将多个字符替换为字符串中的多个值

  11. 11

    如何在C ++中将字符串转换为int?

  12. 12

    在 C 中将字符串转换为 int

  13. 13

    在 C 中将字符数组转换为 int 是否安全?

  14. 14

    如何用C将两个字符交换为一个字符?

  15. 15

    如何用C将两个字符交换为一个字符?

  16. 16

    在C ++ 11中将一百万个字符串映射到int

  17. 17

    C#将所有出现的字符替换为一个字符

  18. 18

    C#将所有出现的字符替换为一个字符

  19. 19

    连接单个字符并转换为c ++中的组合小数

  20. 20

    使用 strchr 在 c 中的 4 个字符串中搜索一个字符

  21. 21

    在C中将int转换为int

  22. 22

    在C中将int转换为int

  23. 23

    C ++中的0个字符

  24. 24

    C中的2个字符

  25. 25

    我有1个字符串xml,我想将其转换为C#类,该怎么办?

  26. 26

    C将一个字符数组中的一个字符替换为另一个

  27. 27

    如何在C中将字符串转换为单个字母char

  28. 28

    从C中的字符串中提取最后4个字符

  29. 29

    从C中的字符串中提取最后4个字符

热门标签

归档