欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 9367|回復(fù): 11
打印 上一主題 下一主題
收起左側(cè)

C語(yǔ)言u(píng)nsigned char類型的數(shù)據(jù)應(yīng)該用什么格式說(shuō)明符輸出

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:452950 發(fā)表于 2020-4-3 22:46 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
以十進(jìn)制輸出一個(gè)數(shù)組中的數(shù)unsigned int a[6]={11,22,33,44,55,66};
可以用
printf("%d%d",a[0],a[1]);
或者
printf("%u%u",a[0],a[1]);
請(qǐng)問(wèn)unsigned char a[6]={1,2,3,4,5,6};應(yīng)該用什么格式說(shuō)明符輸出,
在網(wǎng)上看到有人說(shuō)用%c, %x, %u,但是仍然會(huì)碰到一些問(wèn)題。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:235200 發(fā)表于 2020-4-4 01:25 | 只看該作者
%d、%f、%s、%c %x分別是輸出整數(shù)、實(shí)數(shù)、字符串和字符 十六制數(shù)的控制符,同樣一個(gè)數(shù),輸出格式不同,則結(jié)果不同
回復(fù)

使用道具 舉報(bào)

板凳
ID:282850 發(fā)表于 2020-4-4 09:28 | 只看該作者
  友情提醒,printf是譚xx的C語(yǔ)言教程中最臭名招著的,不學(xué)最好。網(wǎng)上程序代碼我一看到有printf的基本就不看。在潛入式系統(tǒng)它是無(wú)用的。
回復(fù)

使用道具 舉報(bào)

地板
ID:452950 發(fā)表于 2020-4-4 09:34 | 只看該作者
csmyldl 發(fā)表于 2020-4-4 01:25
%d、%f、%s、%c %x分別是輸出整數(shù)、實(shí)數(shù)、字符串和字符 十六制數(shù)的控制符,同樣一個(gè)數(shù),輸出格式不同,則結(jié)果 ...

但是%d是輸出signed int類型的十進(jìn)制數(shù),用來(lái)輸出char類型的數(shù)組中的一個(gè)元素,會(huì)把后面一位也讀出來(lái)。
回復(fù)

使用道具 舉報(bào)

5#
ID:452950 發(fā)表于 2020-4-4 09:47 | 只看該作者
f556 發(fā)表于 2020-4-4 09:28
友情提醒,printf是譚xx的C語(yǔ)言教程中最臭名招著的,不學(xué)最好。網(wǎng)上程序代碼我一看到有printf的基本就不 ...

我是想通過(guò)藍(lán)牙串口導(dǎo)出單片機(jī)考勤器存儲(chǔ)的考勤記錄,覺得用printf和puts比較方便控制換行和排列數(shù)據(jù),請(qǐng)問(wèn)有其他好的方法嗎
回復(fù)

使用道具 舉報(bào)

6#
ID:282850 發(fā)表于 2020-4-4 10:28 | 只看該作者
xxpp2011 發(fā)表于 2020-4-4 09:34
但是%d是輸出signed int類型的十進(jìn)制數(shù),用來(lái)輸出char類型的數(shù)組中的一個(gè)元素,會(huì)把后面一位也讀出來(lái)。

嵌入式系統(tǒng),如單片機(jī)程序中printf基本就沒有使用的,試過(guò)為了調(diào)試用printf將數(shù)組發(fā)到即時(shí)窗口觀查,無(wú)用。沒有即時(shí)性,卻增加了700Byte多。
處理數(shù)據(jù)一般還是依靠C的基本語(yǔ)句,很方便。
惡心printf的另一原因,譚的 ,a= b+a; printf( ); 結(jié)果:xxx 。這種無(wú)聊的寫法,直接說(shuō)明結(jié)果就行了。
前幾天用strcat()連接多個(gè)字符,送LCD12864顯示,總是莫名其妙出問(wèn)題。而且編譯后字節(jié)數(shù)增加694Byte。
直接用 TM[7]=RTCSEC &0x0f+'0';爽了多倍,還保證不出錯(cuò)。 我用過(guò)的MSP430F2001是128Bram,1KBFalsh。
回復(fù)

使用道具 舉報(bào)

7#
ID:452950 發(fā)表于 2020-4-4 19:02 | 只看該作者
f556 發(fā)表于 2020-4-4 10:28
嵌入式系統(tǒng),如單片機(jī)程序中printf基本就沒有使用的,試過(guò)為了調(diào)試用printf將數(shù)組發(fā)到即時(shí)窗口觀查,無(wú)用 ...

我的水平還不夠,需要繼續(xù)學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

8#
ID:546770 發(fā)表于 2020-4-4 21:02 | 只看該作者
這個(gè)怎么說(shuō)呢,不同的格式自然會(huì)輸出不同的信息,說(shuō)白了就是這個(gè)字節(jié)的數(shù)據(jù),你想看16進(jìn)制數(shù)輸出的時(shí)候無(wú)非就是機(jī)器幫你轉(zhuǎn)換了而已。
回復(fù)

使用道具 舉報(bào)

9#
ID:452950 發(fā)表于 2020-4-4 23:05 | 只看該作者
小黑屋525 發(fā)表于 2020-4-4 21:02
這個(gè)怎么說(shuō)呢,不同的格式自然會(huì)輸出不同的信息,說(shuō)白了就是這個(gè)字節(jié)的數(shù)據(jù),你想看16進(jìn)制數(shù)輸出的時(shí)候無(wú)非 ...

我知道不同進(jìn)制怎么輸出,問(wèn)題是如何按十進(jìn)制輸出長(zhǎng)度為1字節(jié)的數(shù)據(jù)
按十進(jìn)制輸出int類型變量可以用%d,按十進(jìn)制輸出char類型變量沒辦法用%d,它會(huì)以給出的地址連續(xù)輸出兩個(gè)字節(jié),如果是char類型的數(shù)組就會(huì)一次讀出兩個(gè)元素。而只輸出一個(gè)字符的%c卻會(huì)將數(shù)據(jù)轉(zhuǎn)化為ASCII碼,且只能解決0+256x~127+256x的數(shù)。
現(xiàn)在找不到好的辦法,要么將要顯示的數(shù)據(jù)都定義為int,要么只能不用printf函數(shù)了。


回復(fù)

使用道具 舉報(bào)

10#
ID:452950 發(fā)表于 2020-4-4 23:25 | 只看該作者
比方說(shuō)       
int a,b;
a=ReadByte(Address1);b=ReadByte(Address2);
printf("%d月%d日\(chéng)n",a,b);            //讀日期
j結(jié)果是4月3日,結(jié)果正常

printf("%d月%d日\(chéng)n",ReadByte(Address1+6),ReadByte(Address1+5));//讀日期
結(jié)果是1027月17日
原因是我把簽到日期年月日時(shí)分秒作為char類型數(shù)組存在AT24C256的6個(gè)地址(AT24C256按字節(jié)讀取一個(gè)地址可存1字節(jié)數(shù)據(jù))
所以用%d按十進(jìn)制輸出char類型和uchar數(shù)據(jù)是有問(wèn)題的,我試過(guò)%c,%i,%u,%hu,%hhu都不行
回復(fù)

使用道具 舉報(bào)

11#
ID:454000 發(fā)表于 2020-4-5 10:01 | 只看該作者
你為什么不定義成unsigned char a[6]={'1','2','3','4','5','6'};你這分明是沒有匹配好,后面改輸出也沒用
回復(fù)

使用道具 舉報(bào)

12#
ID:546770 發(fā)表于 2020-4-5 14:15 | 只看該作者
xxpp2011 發(fā)表于 2020-4-4 23:25
比方說(shuō)       
int a,b;
a=ReadByte(Address1);b=ReadByte(Address2);

這個(gè)我就沒怎么想過(guò)了,串口確實(shí)是輸出ASC碼的,我之前用的是將每一位分別取出,轉(zhuǎn)換成ASC碼,放進(jìn)一個(gè)數(shù)組,再將這個(gè)數(shù)組統(tǒng)一發(fā)送出來(lái),要不你試試這樣子行不行。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表