• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:string型文字列を数値に変更したい)

文字列から数値への変換のエラーについて

このQ&Aのポイント
  • 質問者は、string型の文字列を数値に変換するために、stoi関数を使用しようとしています。
  • しかし、コンパイルエラーが発生し、'stoi'がこのスコープで宣言されていないというエラーメッセージが表示されました。
  • 解決策としては、Arduinoの場合は'parseInt'関数を使用することが推奨されており、これを使用すると問題が解決する可能性があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • Proof4
  • ベストアンサー率78% (151/192)
回答No.1

エラー内容からは、stoiという関数が定義されていないことが分かります。 C++ではstoi関数が定義されていますが、arduinoでは定義されていないようです。 代わりにtoIntを使われてはいかがでしょうか? https://www.arduino.cc/reference/en/language/variables/data-types/string/functions/toint/

techhouse
質問者

お礼

回答頂きありがとうございます。 port = deviceID.toInt(); これで、portに8883の数値を入れることができたことがシリアルモニタでわかりました。 ただ、元は const int port = 8883; というので宣言されていましたが、 long port; という宣言でないとコンパイルが通らなかったのが少し気にかかりますが、とりあえずこれで行ってみます。 助かります。

関連するQ&A