標(biāo)題: keil錯(cuò)誤error C129: missing ';' before '_at_0x30'怎么解決 [打印本頁]

作者: hannyunn    時(shí)間: 2021-12-3 23:48
標(biāo)題: keil錯(cuò)誤error C129: missing ';' before '_at_0x30'怎么解決
#include<reg51.h>
#include<stdio.h>
#define uint unsigned int
#define uchar unsigned char
uchar data a[32]_at_0x30;   //設(shè)定數(shù)組a的起始地址為30H
uint i_at_0x55;     //將變量i放在地址55H
//延時(shí)程序
void DelayMS(uint ms)
{
uchar t;
while(ms--)for(t=0;t<120;t++);
}
//主程序
void main()
{
  SP=0x60;     //設(shè)定堆棧指針位置
  SCON=0x52;
  TMOD=0x20;
  TH1=0xf3;
  TR1=1;       //此行及以上3行為Printf函數(shù)所必須
  for(i=0;i<32;i++)
  {
    a[i]=i;
        printf("It is :%d now.\n",i);        //打印程序執(zhí)行信息
        DelayMS(20000);
}
    while(1);
}
剛開始學(xué)習(xí)的單片機(jī)實(shí)驗(yàn),出現(xiàn)2.3(1).C(5): error C129: missing ';' before '_at_0x30',應(yīng)該是在第五行,求解答!!!!!!


作者: 188610329    時(shí)間: 2021-12-4 00:28
此處需要空格分割:





作者: Hephaestus    時(shí)間: 2021-12-4 14:31
第6行也是錯(cuò)的,只是語法上面沒錯(cuò)而已,定義了一個(gè)屬性u(píng)int,名字叫 i_at_0x55的變量,并沒有樓主預(yù)想的將變量i放在地址55H的功能。
作者: hannyunn    時(shí)間: 2021-12-4 14:59
188610329 發(fā)表于 2021-12-4 00:28
此處需要空格分割:

解決了,感謝!
作者: hannyunn    時(shí)間: 2021-12-4 15:01
Hephaestus 發(fā)表于 2021-12-4 14:31
第6行也是錯(cuò)的,只是語法上面沒錯(cuò)而已,定義了一個(gè)屬性u(píng)int,名字叫 i_at_0x55的變量,并沒有樓主預(yù)想的將 ...

是的, _at_前后都加空格就對(duì)了,十分感謝
作者: 天ノ憶    時(shí)間: 2021-12-4 15:56
這樣寫,你那種寫法編譯器會(huì)以為你定義了兩個(gè)變量,一個(gè)是a[],一個(gè)是_at_0x30,第六行也是這樣,i和_at_ 和0x55要用空格分開

51hei拼音截圖20211204155235.png (10.95 KB, 下載次數(shù): 47)

51hei拼音截圖20211204155235.png

作者: hannyunn    時(shí)間: 2021-12-4 16:13
感謝,已經(jīng)解決了
作者: 加油學(xué)51    時(shí)間: 2024-5-11 19:16
188610329 發(fā)表于 2021-12-4 00:28
此處需要空格分割:

解決了 謝謝!
作者: xiaobendan001    時(shí)間: 2024-5-11 19:19
_at_后面加個(gè)空格
作者: liqiang'    時(shí)間: 2024-5-11 20:07
at_后面用空格分開




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