亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: c51單片機編程將數組轉化為字符串怎么編程? [打印本頁]

作者: zs19951117    時間: 2018-4-10 14:23
標題: c51單片機編程將數組轉化為字符串怎么編程?
在51單片機中比如{1,2,3,4,5,6}轉化為“123456”這種字符串 怎么編程?

作者: gspt    時間: 2020-2-24 21:01
樓主想把數組變成字符串干嘛用呢
(我在搜百度時,發現我們論壇這個問題也沒回答,所以就此發表一點個人見解)
我在lcd12864里:打印一串字符用         LCD12864_write_word(變量);
比如 LCD12864_write_word("00");
變量當然可以是字符串       
那么我添加加如下代碼
u8 arry[5]={1,1,1,1,1};  //欲轉換的數組
u8 str[]="12345";          //原本的字符串
u8 i;
        for(i=0;i<5;i++){
        str[i] = arry[i] +0x30;
}
顯示 LCD12864_write_word(str);       
就變成了11111
一個數字0x30(十進制48)是字符0,不明白的話搜下ascii碼表有幫助


作者: woshige    時間: 2020-2-26 12:27
/*$PAGE*/
/*
*********************************************************************************************************
*                                       HexToStr
* Functions  : Hex轉字符串
*
* Arguments  : pSrc                 被轉換的Hex地址
*              pDst                 被轉換后的字符串地址
*              LimitLen             目的地址空間限制長度  
*                       
* Returns    : 無
*********************************************************************************************************
*/
CPU_VOID HexToStr(CPU_VOID *pDst, CPU_VOID *pSrc, CPU_INT16U LimitLen)
{
    CPU_INT16U i = 0;
    CPU_INT08U ddl, ddh;
    CPU_INT08U *pSrcBuff = (CPU_INT08U*)pSrc;
    CPU_INT08U *pDstBuff = (CPU_INT08U*)pDst;
   
    CPU_INT16U ValidLen = LimitLen >> 1;
   
    for (i = 0; i < ValidLen; i++)
    {
        ddh = 48 + pSrcBuff[i] / 16;
        ddl = 48 + pSrcBuff[i] % 16;
        
        if (ddh > 57)
        {
            ddh = ddh + 7;
        }
        if (ddl > 57)
        {
            ddl = ddl + 7;
        }
        
        pDstBuff[i * 2] = ddh;
        pDstBuff[i * 2 + 1] = ddl;
    }
   
    if (LimitLen % 2 != 0)
        pDstBuff[LimitLen * 2] = '\0';
}
自用代碼,可以參考




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1