<tfoot id="ygvxt"><menuitem id="ygvxt"></menuitem></tfoot>
    • <kbd id="ygvxt"></kbd>
      <th id="ygvxt"><progress id="ygvxt"></progress></th>

      您好,歡迎訪問上海意泓電子科技有限責(zé)任公司網(wǎng)站!
      4新聞資訊
      您的位置: 首頁 ->  新聞資訊 -> 單片機(jī)

      ?sprintf在51單片機(jī)中轉(zhuǎn)換字符出錯問題解決

      文章出處:單片機(jī) 責(zé)任編輯:上海意泓電子科技有限責(zé)任公司 發(fā)表時間:
      2020
      11-10

      sprintf是C語言庫中具有轉(zhuǎn)換數(shù)據(jù)類型的功能函數(shù),出現(xiàn)一種情況,

      在51單片機(jī)中,定義unsigned  char   temp;

      然后 想用串口直接把temp 以十進(jìn)制數(shù)是、形式打印出來,是先這樣轉(zhuǎn)換的 sprintf((char*)tem,"%d",temp);即先把temp轉(zhuǎn)換成十進(jìn)制數(shù)字符tem,然后再通過串口輸出tem,然而串口輸出的竟然有亂碼,而且和temp的值也不對應(yīng);

      查找原因:原來%d,代表的是將int型數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制字符的作用,既然是int型,那他占用空間為至少2個字節(jié),那么我們定義的temp僅是unsigned char 占空間一字節(jié),所以函數(shù)在轉(zhuǎn)換時,會錯誤的轉(zhuǎn)換temp空間外的一字節(jié)空間的數(shù)據(jù),這是未知的數(shù)據(jù),所以會出現(xiàn)打印亂碼情況,那么把unsigned char temp;改為 unsigned int temp 后,再次測試

      果然輸出正確無誤!


      上海意泓電子科技有限責(zé)任公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像

      CopyRight 2020-2025 www.hljhgw.com All rights reserved   滬ICP備2021005866號

      国产强伦姧在线观看,…中文天堂在线一区,亚洲欧洲精品污网站在线观看,在线视频综合站 亚太影院 柯西贝尔-游戏赚网
      <tfoot id="ygvxt"><menuitem id="ygvxt"></menuitem></tfoot>
        • <kbd id="ygvxt"></kbd>
          <th id="ygvxt"><progress id="ygvxt"></progress></th>

          亚洲超碰97人人| 国产三级在线三级网站| 亚洲熟女少妇精品| 一区二区免费不卡在线| 中文字幕一区日韩高清| 国产中文字幕精品视频| 2020亚洲无码在线观看| 韩日人妻无码视频| 亚洲精品尤物在线无码视频| 午夜亚洲国产理论片中文| 最新无码国产在线视频走光| 日韩亚洲色欲色一欲www| 日韩人妻糸列一区二区三区| 日韩国产亚洲欧美成人| 日韩欧美亚洲色图中文字幕| 久久综合九色综合97婷婷| 无码中文字幕av王| 亚洲一级a爱视频在线| 亚洲国产精品一区二区尤物| 人妻无码一区二区三区免费| 中文无码人妻免费视频| 毛片一级国产视频毛片|