您好,登錄后才能下訂單哦!
這篇文章運(yùn)用簡(jiǎn)單易懂的例子給大家介紹C語(yǔ)言中有哪些函數(shù)轉(zhuǎn)換工具,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
1、字符串轉(zhuǎn)十六進(jìn)制
代碼實(shí)現(xiàn):
2、十六進(jìn)制轉(zhuǎn)字符串
代碼實(shí)現(xiàn):
或者
效果:十六進(jìn)制:0x13 0xAA 0x02轉(zhuǎn)為字符串:”13AAA2”
3、字符串轉(zhuǎn)十進(jìn)制
代碼實(shí)現(xiàn):
第一種,如果帶負(fù)號(hào) 這個(gè)就是atoi函數(shù)的實(shí)現(xiàn):
效果:字符串:”-123” 轉(zhuǎn)為 -123
第二種,如果不帶負(fù)號(hào):
效果:字符串:”123” 轉(zhuǎn)為 123
第三種:包含轉(zhuǎn)為浮點(diǎn)數(shù):
效果:字符串:”123.456” 先轉(zhuǎn)為 123456,然后除以1000得到123.456
4、十進(jìn)制轉(zhuǎn)字符串
代碼實(shí)現(xiàn):
如果只是單個(gè)十進(jìn)制轉(zhuǎn)字符串,使用sprintf函數(shù)就可以了。
如果是十進(jìn)制數(shù)組:
效果:十進(jìn)制數(shù)組13 14轉(zhuǎn)為字符串“1314”
5、u8、u32轉(zhuǎn)換
舉個(gè)栗子:ASCII碼里
這里寫圖片描述 字符‘A' , 一個(gè)字節(jié)8bit ,即u8 十六進(jìn)制為 0x41 二進(jìn)制為 0100 0001
而對(duì)應(yīng)的十進(jìn)制為 65 整型65,4個(gè)字節(jié)32bit,即u32 十六進(jìn)制為 0x41 二進(jìn)制為 0000 0000 0000 0000 0000 0000 0100 0001
將u32數(shù)轉(zhuǎn)換成u8數(shù)組
注意:這里是字符數(shù)組,不是字符串
字符串是以空字符(\0)結(jié)尾的char數(shù)組
效果:整型 50 轉(zhuǎn)字符數(shù)組 {‘\0','\0','\0','2'}
u8數(shù)組轉(zhuǎn)u32
voidU8ArrayToU32(uint8_t*buf,uint32_t*u32Value) { *u32Value=(buf[0]<<24)+(buf[1]<<16)+(buf[2]<<8)+(buf[3]<<0); }
效果:字符數(shù)組 {‘\0','\0','\0','2'}轉(zhuǎn)為整型 50
6、大端小端
最后就是大小端問(wèn)題了。STM32 默認(rèn)是小端模式的,那么該如何轉(zhuǎn)為大端?
1、轉(zhuǎn)為大端
效果:len為數(shù)據(jù)類型為 u16(short),比如 0x11 0x22,轉(zhuǎn)為u8(usigned char)數(shù)組。
大端為:
小端為:
關(guān)于C語(yǔ)言中有哪些函數(shù)轉(zhuǎn)換工具就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。