首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言常用的进制转换工具函数盘点!爷爷再也不用担心我不会进制转换了!

01

字符串转十六进制

代码实现:

02

十六进制转字符串

代码实现:

或者:

效果:十六进制"0x13 0xAA 0x02",转为字符串"13AAA2"。

03

字符串转十进制

(1)若带负号,代码实现:

效果:字符串"-123"转为"-123"。

(2)若不带负号,代码实现:

效果:字符串"123"转为"123"。

(3)包含转为浮点数,代码实现:

效果:字符串"123.456"先转为"123456",然后除以1000得到"123.456"。

04

十进制转字符串

如果只是单个十进制转字符串,使用sprintf函数就可以了。

如果是十进制数组:

效果:十进制数组"13 14"转为字符串"1314"。

05

u8、u32转换

举个例子,ASCII码。

这里写图片描述:字符‘A’ , 一个字节8bit ,即u8十六进制为0x41二进制为"0100 0001"。

而对应的十进制为65,4个字节32bit,即u32十六进制为0x41二进制为"0000 0000 0000 0000 0000 0000 0100 0001"。

(1)将u32数转换成u8数组

注意:这里是字符数组,不是字符串;字符串是以空字符(\0)结尾的char数组。

效果:整型 50 转字符数组 {‘\0’,’\0’,’\0’,’2’}。

(2)u8数组转u32

效果:字符数组 {‘\0’,’\0’,’\0’,’2’}转为整型 50。

06

大端小端

STM32默认是小端模式,那么该如何转为大端?

代码实现:

效果:len为数据类型为u16(short),比如0x11 0x22,转为u8(usigned char)数组。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201207A08IN800?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券