c语言uint64_t转String,C语言编程 8字节的数据转换为uint64_t类型数据

有2种方式可以实现:

第一种方式:

数据类型强制转换,需要注意平台是大端还是小端 ,如果平台是大端,那么字节数组存放的字节顺序是高字节在前;如果平台是小端,那么字节数组存放的字节顺序是低字节在前。

此例程需要在小端模式的平台上运行

/**

* @brief None

* @param None

* @retval None

*/

int main( void )

{

uint8_t ByteDatasLittleEnd[8] = {0x06, 0x4E, 0xE7, 0xDF, 0x72, 0x01, 0x00, 0x00 };

uint64_t u64Value;

u64Value = *(uint64_t *)ByteDatasLittleEnd;

printf("u64Value:%lld\r\n", u64Value );

}

运行结果:

u64Value:1592894377478

第二种方式:

通过移位实现,和平台的大小端无关,如果字节数组里存放的字节顺序是高字节在前,则使用ByteToU64BigEnd()函数;如果字节数组里存放的字节顺序是低字节在前,则使用ByteToU64LittleEnd()函数。

#include "stdint.h"

/**

* @brief Little end format.

* @param None

* @retval None

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值