【C/C++】could not convert ‘xxx’ from ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string‘} to ‘String’と出る時の解決法

Programming error

事象

Line_notify使用中に、連結した文字列を出力しようとしたところArduino IDEにて下記エラーが表示される。

exit status 1
could not convert 'lmsg' from 'std::__cxx11::string' {aka 'std::__cxx11::basic_string<char>'} to 'String'

原因

Arduino関数 String() はC++の型である文字列クラス std::string をそのまま受け取ることは出来ない。

解決策

std::stringのメンバ関数であるc_str()を使い、char* 型のポインタを返すようにする。
具体的には以下。

const char* nyaa = hogehoge.c_str();

(参考)

まる。

━━━━━━━━━━━━━━━━━
■未経験OK!大学生インターン募集中!
プログラミングやITなど
興味ある方ご連絡ください‎。
(๑ > ﻌ <`)و✧
━━━━━━━━━━━━━━━━━
Python歴5年のフルスタックエンジニア&ヨギー。
大学は心理学専攻、趣味はヘルスケア全般。
最近は自作脳波デバイスの設計とそれを使ったインタラクティブアート生成に勤しみ中。

↓アートとか日常。
Instagram:@malmal0v0

お仕事のご依頼はDM又はメールにて。

まる。をフォローする
その他の記事はこちら
[Touchdesigner]1秒に1増加する変数をPythonで書く方法
【Touchdesigner】e-06って?値に英字が入る理由を解説
教育訓練給付金で45万円付与!4ヶ月で未経験からエンジニアを目指せるディープロ(DPro)を解説
【4人に1人が盗み見被害!?】意外と知られていない、公共フリーWiFiの危険性と対策について解説
開発終了した筋電によるジェスチャー操作デバイスMyo armbandをどこまで使えるか検証してみる(2023年)

タイトルとURLをコピーしました