標題: 求助:stc15單片機printf疑問 [打印本頁]

作者: zhou792008    時間: 2015-8-14 15:53
標題: 求助:stc15單片機printf疑問
   STC15的例程調(diào)試不通,用printf時 必須要先把TI=0 ,這下好了 ,但是我想用16進制的數(shù)組輸出到串口,STDIO.H添加了 ,但是始終不對,比如我想輸出0X2568 ,用串口助手出來一排 32,,35,36,38 始終16進制數(shù)前面有個3 并且沒連著,請問我格式錯在哪? printf("%2x",0x2568) 謝謝大家!



作者: 王朗的誘惑    時間: 2015-8-15 09:38
都是ASCII碼。HEX模式就把ASCII碼打印出來了,切換到文本模式就是2568。2的ASCII碼是0x32,5的ASCII碼是0x35,6的ASCII碼是0x36,8的ASCII碼是0x38。
作者: 無量壽經(jīng)    時間: 2015-8-15 11:14
       chara=-100;
    int b=-2000;
    long c=6553600;
    printf ("char_0x%bx  int_0x%x long_0x%lx\n",a,b,c);   // 16進制輸出   
    // 實際輸出:char_0x9c  int_0xf830 long_0x640000   
     // 輸出無符號16進制整數(shù),x表示按小寫輸出,X表示按大寫輸出


作者: zhou792008    時間: 2015-8-15 13:15
王朗的誘惑 發(fā)表于 2015-8-15 09:38
都是ASCII碼。HEX模式就把ASCII碼打印出來了,切換到文本模式就是2568。2的ASCII碼是0x32,5的ASCII碼是0x3 ...

非常感謝


作者: zhou792008    時間: 2015-8-15 13:15
無量壽經(jīng) 發(fā)表于 2015-8-15 11:14
chara=-100;    int b=-2000;    long c=6553600;    printf ("char_0x%bx  int_0x%x long_0x%lx\n" ...

非常感謝!
作者: bhjyqjs    時間: 2015-9-22 17:09
使用 printf 語句,TI=1是必須的




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