首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Keil C51 字符串字面量作為數組:uchar code table[]="12345678" 解析

     編輯:程式設計疑難解答

代碼含義

uchar code table[] = "12345678";
  • code:Keil C51 關鍵字,將數組放入程序存儲區(ROM/Flash),不佔用珍貴的 RAM。
  • "12345678":字符串字面量,編譯器自動展開为字符數組 {'1','2','3','4','5','6','7','8','\0'}。
  • table[i] 訪問第 i 個字符的 ASCII 碼(如 table[0] == '1' == 0x31)。

為何不需要大括號?

C 語言規定:字符串字面量初始化字符數組時,可省略大括號,編譯器自動完成展開并添加結束符 \0。

元素值范圍

每個元素為 char(或 uchar),值为對應字符的 ASCII 碼('0'~'9' 即 0x30~0x39),非數值 0~9。若需數值 0~9,應寫为:
uchar code table[] = {0,1,2,3,4,5,6,7,8};

調用示例

for (uchar num=0; num<8; num++) {
    LCDdata(table[num]); // 發送 ASCII 碼顯示字符 '1'..'8'
}

參考資源

Keil C51 字符串數組初始化詳解

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved