Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C语言中将uint8_t数组连接到uint32_t数组_C_Arrays_Concatenation - Fatal编程技术网

在C语言中将uint8_t数组连接到uint32_t数组

在C语言中将uint8_t数组连接到uint32_t数组,c,arrays,concatenation,C,Arrays,Concatenation,这可能是以前问过的。但我还是会问的。如果有人能告诉我一些相关的事情,那也太好了 因此,如果我有: uint8_t src[] = {34, 56, 31, 89, 11, 32, 67, 89}; 这是否可能通过串联得到类似的结果: uint32_t dst[] = {34563189, 11326789}; 如果是,如何进行?我看到了一个将uint8_t数组强制转换为uint32_t的问题,但我需要将4字节块并排放入uint32_t数组。谢谢 在我看来 使用snprintf()将单个uin

这可能是以前问过的。但我还是会问的。如果有人能告诉我一些相关的事情,那也太好了

因此,如果我有:

uint8_t src[] = {34, 56, 31, 89, 11, 32, 67, 89};
这是否可能通过串联得到类似的结果:

uint32_t dst[] = {34563189, 11326789};
如果是,如何进行?我看到了一个将uint8_t数组强制转换为uint32_t的问题,但我需要将4字节块并排放入uint32_t数组。谢谢

在我看来

  • 使用
    snprintf()
    将单个
    uint8\t
    s打印到
    char
    数组中
  • 使用
    strtol()
    将数组转换为整数

  • 如果您确实在使用十进制值:

    uint32_t dst[] = {1000000 * src[0] +10000 * src[1] + 100 * src[2] + src[3],
                      1000000 * src[4] +10000 * src[5] + 100 * src[6] + src[7]};
    

    这些应该是十六进制值吗?@nneonneo如果它们是十进制值,那么我想ouah的答案很好。但我也很好奇,如果它们是妖术的话,解决办法会是什么。有什么想法吗?非常感谢你的回答!如果这些是十六进制值,它会发生什么变化?@xMaster那么你需要
    完美!谢谢!