找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5966|回復: 1
打印 上一主題 下一主題
收起左側(cè)

Arduino提示expected initializer before numeric constant

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:798432 發(fā)表于 2020-7-8 15:46 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
大家好,新人學習arduino。遇到了一個奇怪 的問題。

提示:expected initializer before numeric constant,數(shù)值常量之前應為初始值設定項

按我理解第一步預定義常量不就是在設定初始值嗎?附上程序和報錯信息。

請大佬指點一二。謝謝!

程序:
const int BUTTON_A  7
const int BUTTON_B  8

void setup() {
  // put your setup code here, to run once:

  pinMode(LED_BUILTIN,OUTPUT);
  pinMode(7,INPUT);
  pinMode(8,INPUT);

}

void loop() {
  // put your main code here, to run repeatedly:
if (LOW == digitalRead(BUTTON_A){
  bool FLAG_A = 1;
  unsigned long time_A_init = millis();
  }
if (FLAG_A){
  if (millis()-time_A_init > SET_A){
    digitalWrite(LED_BUILTIN,HIGH);
    FLAG_A = 0;
    time_A_init = 0;
    delay(1000);
    digitalWrite(LED_BUILTIN,LOW);
  }
}
}


報錯信息
Arduino:1.8.5 (Windows 7), 開發(fā)板:"Arduino/Genuino Uno"

20200708_DELAY:2: error: expected initializer before numeric constant

const int BUTTON_A  7

                     ^

D:\Alan wu\Arduino\20200708_DELAY\20200708_DELAY.ino: In function 'void loop()':

20200708_DELAY:16: error: 'BUTTON_A' was not declared in this scope

if (LOW == digitalRead(BUTTON_A){

                        ^

20200708_DELAY:16: error: expected ')' before '{' token

if (LOW == digitalRead(BUTTON_A){

                                 ^

20200708_DELAY:29: error: expected primary-expression before '}' token

}

^

exit status 1
expected initializer before numeric constant

在文件 -> 首選項開啟
“編譯過程中顯示詳細輸出”選項
這份報告會包含更多信息。


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

使用道具 舉報

沙發(fā)
ID:798432 發(fā)表于 2020-7-8 16:12 | 只看該作者
我嘗試將const int BUTTON_A  7 表達方式,改成 #define BUTTON_A 7

可以 成功加載了。不明白是為什么?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

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

快速回復 返回頂部 返回列表