【问题标题】:error: invalid conversion from ‘const char*’ to ‘int’ [-fpermissive]错误:从‘const char*’到‘int’的无效转换[-fpermissive]
【发布时间】:2014-07-03 08:29:57
【问题描述】:

我一直在使用我的 arduino 进行一个项目,该项目在 LCD 上显示敲门笑话,但我在编码时遇到了问题。

这是我目前所拥有的

#include<LiquidCrystal.h>

LiquidCrystal lcd(12,11,5,4,3,2);
int buttonPin = 13;
int menu = 0;
int joke(int line1, int line2){
  lcd.setCursor(0, 0); 
  lcd.print(line1);
  lcd.setCursor(0, 1);
  lcd.print(line2);
  lcd.setCursor(0, 0);
}

void setup(){
  pinMode(buttonPin, INPUT);
  lcd.begin(16,2);
}

void loop() {
  lcd.setCursor(15, 0);
  lcd.print(menu);
  int buttonValue = digitalRead(buttonPin);
  if(buttonValue = HIGH){
    menu = menu + 1;
  }
  if(menu == 0){
    joke("Knock!", "Knock!");
  } 

但是当我运行它时,我得到了错误

LCD_HelloWorld.ino: In function ‘void loop()’:
LCD_HelloWorld.ino:28:28: error: invalid conversion from ‘const char*’ to 'int’          [-fpermissive]
LCD_HelloWorld.ino:7:5: error:   initializing argument 1 of ‘int joke(int, int)’ [-fpermissive]
LCD_HelloWorld.ino:28:28: error: invalid conversion from ‘const char*’ to ‘int’ [-fpermissive]
LCD_HelloWorld.ino:7:5: error:   initializing argument 2 of ‘int joke(int, int)’    [-fpermissive]

在网上搜索后我什么也没找到,那么任何机构都有解决方案吗? 顺便说一句:我是 arduino 和 C/C++ 的新手

【问题讨论】:

    标签: c++ compiler-errors arduino lcd


    【解决方案1】:

    改变

    int joke(int line1, int line2)
    

    int joke(const char * line1, const char * line2)
    

    【讨论】:

    • const char*和const char有什么区别
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-30
    • 1970-01-01
    • 2019-10-30
    相关资源
    最近更新 更多