色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何轉(zhuǎn)化十六進制字符串

魚鷹談單片機 ? 來源:魚鷹談單片機 ? 2024-01-09 09:12 ? 次閱讀

來源:公眾號【魚鷹談單片機

作者:魚鷹Osprey

ID :emOsprey

前段時間移植了 tinyUSB 開源庫,使 STM32F013C8T6 成功模擬了 7 個串口 獨立的 CDC 設(shè)備(參考了知乎上一篇文章,不過那個實現(xiàn)還有一些問題,并且不能單獨設(shè)置每個串口的波特率)。

后面又移植了 lwip ,成功實現(xiàn)了虛擬網(wǎng)絡(luò)適配器:

15291fc4-ae8a-11ee-8b88-92fbcf53809c.png

于是準備看看源碼實現(xiàn),突然發(fā)現(xiàn)一條看不懂的代碼:

_desc_str[1+chr_count++] = "0123456789ABCDEF"[(tud_network_mac_address[i] >> 4) & 0xf];

乍看一下,字符串不像字符串,數(shù)組也不像,直到看到說明,才大概明白,運行之后,顛覆三觀了。。。

完整代碼如下:

static uint16_t _desc_str[32 + 1];
unsigned int chr_count = 0;
uint8_t tud_network_mac_address[6] = {0x02,0x02,0x84,0x6A,0x96,0x00};
// Convert MAC address into UTF-16
for (unsigned i=0; i> 4) & 0xf];
    _desc_str[1+chr_count++] = "0123456789ABCDEF"[(tud_network_mac_address[i] >> 0) & 0xf];
}

功能就是將 mac 地址轉(zhuǎn)化為 16 進制,并且還是 utf-16格式(16 bit 一個字符)

最終轉(zhuǎn)化效果如下(16bit 和字符串顯示):

153b64f4-ae8a-11ee-8b88-92fbcf53809c.png

并且雖然"0123456789ABCDEF" 寫了兩次,但內(nèi)存中只有一份拷貝,因此并不會占用更多空間,并且因為使用索引形式,效率也是杠杠滴!

1544e13c-ae8a-11ee-8b88-92fbcf53809c.png

嗯,以后十六進制轉(zhuǎn)化就用這個代碼了。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7614

    瀏覽量

    137615
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1557

    瀏覽量

    76979
  • 字符串
    +關(guān)注

    關(guān)注

    1

    文章

    585

    瀏覽量

    20593
  • 十六進制
    +關(guān)注

    關(guān)注

    2

    文章

    32

    瀏覽量

    37835

原文標題:絕了,還能這么轉(zhuǎn)化十六進制字符串-C語言騷操作

文章出處:【微信號:emOsprey,微信公眾號:魚鷹談單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    labview中浮點數(shù)與十六進制字符串相互轉(zhuǎn)化

    與下位機數(shù)據(jù)交流及通訊時,經(jīng)常有浮點數(shù)與十六進制字符串相互轉(zhuǎn)化的需求,經(jīng)過兩天總結(jié),找到了最簡潔的相互轉(zhuǎn)化的方法,萌新歡迎大佬指正,文件也附上。*附件:HEX
    發(fā)表于 10-21 19:51

    十六進制數(shù)字符串至數(shù)值轉(zhuǎn)換的問題

    `通過串口發(fā)送和接收數(shù)據(jù)。接收到的十六進制數(shù)據(jù)想要變?yōu)槭?b class='flag-5'>進制數(shù)據(jù)輸出。但是用“十六進制數(shù)字符串至數(shù)值轉(zhuǎn)換”這個空間最后的顯示結(jié)果是0。自認為是十六進
    發(fā)表于 04-09 10:47

    字符串轉(zhuǎn)十六進制

    字符串轉(zhuǎn)十六進制
    發(fā)表于 08-26 15:34

    字符串顯示轉(zhuǎn)換十六進制顯示

    字符串顯示轉(zhuǎn)換十六進制顯示。例如:字符串:A21D4700轉(zhuǎn)換成十六進制:A21D 4700怎么做呀?
    發(fā)表于 04-22 16:50

    字符串進制轉(zhuǎn)十六進制

    下位機發(fā)送的報文都是十六進制的,如顯示999發(fā)送過來的報文就是09 09 09、(把999拆成三個9)用上圖的方法我已經(jīng)把下位機的保溫解析,但是現(xiàn)在我想反轉(zhuǎn)手動輸入十進制字符串轉(zhuǎn)成十六進制
    發(fā)表于 05-26 13:19

    進制字符串十六進制字符串轉(zhuǎn)換 拿來分享

    自己做的二進制字符串十六進制字符串轉(zhuǎn)換拿來分享
    發(fā)表于 07-24 11:36

    十六進制數(shù)字符串至數(shù)值或字符轉(zhuǎn)換的問題

    本帖最后由 zhuimengren2034 于 2015-10-9 15:08 編輯 通過串口直接收到的十六進制數(shù),想要通過程序自動顯示為十進制數(shù);字符串是0102FFFE(每四位表示一個
    發(fā)表于 10-09 15:03

    十六進制顯示的字符串怎么進行加法運算

    十六進制顯示的字符串怎么進行加法運算,我使用字符串至數(shù)值的轉(zhuǎn)換顯示轉(zhuǎn)換結(jié)果為0,不知道怎么回事
    發(fā)表于 01-06 20:12

    Labview十進制數(shù)據(jù)轉(zhuǎn)化十六進制字符串十六進制顯示)

    希望走過路過的大神幫我解決一下這個問題! 問題描述:通過Labview向下位機發(fā)送數(shù)據(jù)為十六進制字符串,其中有一部分是數(shù)值轉(zhuǎn)換成十六進制字符串,程序如下圖所示圖中的這兩處
    發(fā)表于 05-16 10:53

    數(shù)據(jù)轉(zhuǎn)換、SQL存儲,十六進制字符串、正常字符串

    到了這個方法。方法:將所有亂碼的 ,不亂碼的數(shù)據(jù)顯示成十六進制,如下圖所示,把正常顯示的字符串更換為16進制顯示,當顯示為16進制字符串時,
    發(fā)表于 05-27 10:29

    進制字符串十六進制字符串轉(zhuǎn)換,十六進制字符串顯示為ASCII碼,拿來分享

    自己用labview做的二進制字符串十六進制字符串轉(zhuǎn)換,十六進制字符串顯示為ASCII碼,拿來
    發(fā)表于 01-24 11:18

    字符串轉(zhuǎn)為十六進制軟件工具

    字符串轉(zhuǎn)為十六進制軟件工具
    發(fā)表于 06-30 09:51 ?453次下載

    stm32十六進制字符串轉(zhuǎn)十進制數(shù)值代碼

    stm32十六進制字符串轉(zhuǎn)十進制數(shù)值代碼CSDN不會用,文檔寫在語雀內(nèi)轉(zhuǎn)載請注明作者:DK127、Holinkity代碼僅供參考,不允許用來賺CSDN幣謝謝附上參考代碼:https
    發(fā)表于 01-12 18:34 ?42次下載
    stm32<b class='flag-5'>十六進制</b><b class='flag-5'>字符串</b>轉(zhuǎn)十<b class='flag-5'>進制</b>數(shù)值代碼

    HTA:將十六進制數(shù)轉(zhuǎn)換為ASCII字符串

    使用該指令,可以將在輸入 IN 中指定的十六進制數(shù)轉(zhuǎn)換為 ASCII 字符串。轉(zhuǎn)換結(jié)果存儲到參數(shù) OUT 指定的地址中。
    的頭像 發(fā)表于 06-19 11:55 ?2568次閱讀

    HTA:將十六進制數(shù)轉(zhuǎn)換為 ASCII 字符串

    說明 使用該指令,可以將在輸入 IN 中指定的十六進制數(shù)轉(zhuǎn)換為 ASCII 字符串。轉(zhuǎn)換結(jié)果存儲到參數(shù) OUT 指定的地址中。 使用參數(shù) N,可指定待轉(zhuǎn)換十六進制字節(jié)的數(shù)量。由于 ASCII
    的頭像 發(fā)表于 06-26 11:01 ?4243次閱讀
    主站蜘蛛池模板: 无人影院在线播放视频 | 美女脱得只剩皮肤 | 好紧好湿太硬了我太爽了文字 | 91精选国产| 国产亚洲欧洲日韩在线观看 | 国产亚洲精品久久久久久线投注 | 另类重口bdsm日本tv | 亚洲精品午夜VA久久成人 | ppypp午夜限制不卡影院私人 | 黄色888| 色偷偷亚洲男人天堂 | 国产在线aaa片一区二区99 | 岛国片免费看 | 久久噜国产精品拍拍拍拍 | 国产精品青草久久福利不卡 | 综合网伊人 | 亚洲精品无码国产爽快A片百度 | 四虎亚洲中文字幕永久在线 | 牛牛在线精品视频(正) | 精品国产乱码久久久久乱码 | 国家产午夜精品无人区 | 国产主播福利一区二区 | 国产午夜精品久久久久九九 | 成人在线免费观看 | 国产香蕉视频在线播放 | 忘忧草直播 | 欧美视频精品一区二区三区 | 最近最新中文字幕MV高清在线 | 精品国产国偷自产在线观看 | 琪琪色原网站ying | 19十主播福利视频 | 99久久精品免费国产一区二区三区 | 黑人 尺寸 强行害怕 痛哭 | 免费亚洲视频在线观看 | 狼群资源网中文字幕 | 最近中文字幕MV免费高清在线 | 亚洲精品国偷拍自产在线 | 国产久青青青青在线观看 | 亚洲欧美高清在线精品一区 | 果冻传媒2021一二三在线观看 | 搡女人免费免费视频观看 |