微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Arduino 字符串不能正确地将整数转换为字符串

如何解决Arduino 字符串不能正确地将整数转换为字符串

我使用 TinkerCad 作为 Arduino UNO R3 模拟器。我的目标是将 int 转换为字符串,但以下代码打印 188 而不是 180。

void setup()
{
  Serial.begin(115200);
}


void loop()
{
  Serial.println(String(180));
}

Serial monitor output

输出188,如您在上面 TinkerCad 串行监视器的屏幕截图中所见。为什么 String 会出现奇怪的问题?

解决方法

这真的很奇怪。试试这个:

int intValue = 180;
string stringValue;

void setup()
  {
    Serial.begin(9600);
  }


void loop()
  {
    stringValue = String(intValue);
    Serial.println(stringValue);
  
}
,

似乎是一个 tinkercad 问题。你奇怪的草图在真正的 Arduino 上运行良好。

,

与 tinkercad 有同样的问题。
String (intval) or (String) intval was not working.

Kludge:如果可能,使用 lcd.write(int); 代替(即尽可能使用 int 并直接发送 int 进行写入)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。