Arduino Serial.parseInt 函式的運作方式

Arduino Serial.parseInt 函式的運作方式

💡 原文中文,约4000字,阅读约需10分钟。
📝

内容提要

Arduino 的 Serial 提供 parseInt 方法用于读取整数。该方法会等待负号或数字,超时则返回 0。可以设置 lookahead 参数来控制非数字字符的处理,并使用 ignore 参数允许数字间有特定符号。使用时需谨慎,以免程序卡住。

🎯

关键要点

  • Arduino 的 Serial 提供 parseInt 方法用于读取整数。

  • parseInt 方法会等待负号或数字,超时则返回 0。

  • lookahead 参数控制非数字字符的处理方式。

  • SKIP_ALL(默认)会丢弃非数字字符,SKIP_NONE 会保留,SKIP_WHITESPACE 会丢弃空白字符。

  • 如果在设定的超时时间内未收到负号或数字,将返回 0。

  • 一旦收到负号或数字,将持续读取直到超时或遇到非数字字符。

  • ignore 参数允许在数字间有特定符号,如英文逗号。

  • 使用 ignore 参数时,必须指定 lookahead 参数。

  • 使用 SKIP_WHITESPACE 时,只会丢弃空白字符,遇到非空白字符将返回 0。

  • parseFloat 方法与 parseInt 类似,但支持小数点。

延伸问答

Arduino 的 Serial.parseInt 方法是如何工作的?

Serial.parseInt 方法等待负号或数字输入,超时则返回 0,接收到有效输入后持续读取直到遇到非数字字符或超时。

如何使用 lookahead 参数来处理非数字字符?

lookahead 参数可以设置为 SKIP_ALL、SKIP_NONE 或 SKIP_WHITESPACE,分别控制是否丢弃非数字字符、保留字符或只丢弃空白字符。

如果在设定的超时时间内没有输入,parseInt 会返回什么?

如果在设定的超时时间内未收到负号或数字,parseInt 将返回 0。

如何使用 ignore 参数来允许特定符号?

使用 ignore 参数时,必须指定 lookahead 参数,可以在数字间加入特定符号,如英文逗号。

使用 SKIP_WHITESPACE 时会有什么效果?

使用 SKIP_WHITESPACE 时,只会丢弃空白字符,遇到非空白字符将返回 0。

parseFloat 方法与 parseInt 有什么相似之处?

parseFloat 方法与 parseInt 类似,但支持小数点,其他用法和注意事项基本相同。

🏷️

标签

➡️

继续阅读