熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
|
發(fā)布時(shí)間: 2020-2-1 09:13
正文摘要:倒數(shù)第三行的u8(儲(chǔ)存鍵值的) KeyValue 它儲(chǔ)存鍵值不用定義嗎? 為什么這個(gè)語句可以這樣寫。 下面的u8 code smgduan[17] 同理 謝謝 |
|
在這里它就是unsigned char KeyValue;如果你的變量KeyValue在運(yùn)算中裝載的數(shù)據(jù)可能大于127,就應(yīng)該定義為:unsigned int KeyValue;如果有其他的預(yù)定義還可以寫作uchar dat,uint dat,ulong dat,u8 dat,u16 dat 等等。 |
csmyldl 發(fā)表于 2020-2-1 21:29 嗯嗯,謝謝 |
odfggf 發(fā)表于 2020-2-1 20:40 哦哦,這回明白了,謝謝你。 |
fumoumou 發(fā)表于 2020-2-1 18:05 是呀,u8 KeyValue就是unsigned char KeyValue |
| 因?yàn)閠ypedef啊 |
fumoumou 發(fā)表于 2020-2-1 18:05 之前用了typedef unsigned char u8預(yù)處理命令,所以u(píng)8 KeyValue沒問題。 沒有typedef定義,寫成unsigned char KeyValue也可以 |
| u8就是unsigned char的別名呀,u8 KeyValue; 就是 unsigned char KeyValue; 這樣懂了吧 |
|
KEIL C51非通用C語言,有一些特定的規(guī)范,如 data:固定指前面0x00-0x7F的128個(gè)RAM,可以用acc直接讀寫,速度最快,生成的代碼也最小。 idata:固定指前面0x00-0xFF的256個(gè)RAM,其中前128和data的128完全相同,只是訪問的方式不同。 xdata:外部擴(kuò)展RAM。 code:ROM。 |
csmyldl 發(fā)表于 2020-2-1 12:40 我感覺我學(xué)了一個(gè)假的c語言 |
csmyldl 發(fā)表于 2020-2-1 12:39 這個(gè)和我學(xué)的c語言號(hào)好像不太一樣,不是應(yīng)寫成int KeyValue;嗎? c語言的變量定義不是“類型名+ 變量名”嗎? |
| 還是建議你先去學(xué)習(xí)一下C語言的基本知識(shí) |
| u8 KeyValue;就是定義一個(gè)存儲(chǔ)8位二進(jìn)制的內(nèi)存空間,這就是變量的定義方式呀,而不能使用define來定義 |
Powered by 單片機(jī)教程網(wǎng)