3
現在、floatを文字列として出力しようとしている、particle.io Sparkプラットフォームで作業しています。フロートを変換するために文字列ストリームを使用するいくつかのソリューションを見ました。C++ floatからstringへの変換がstringstreamで失敗しました
以下、次のように私の実装は次のとおりです。
#include <sstream>
void loop()
{
float tempC = 21.35;
std::ostringstream stream;
stream << tempC;
std::string tempCString = stream.str();
// why does this give me a blank string?
Serial.print("Temp 1: ");
Serial.println(tempCString.c_str());
// while this outputs the float
Serial.print("Temp 2: ");
Serial.println(tempC);
Serial.println(tempCString.size());
}
これは、次の出力が生成されます。
Temp 1:
Temp 2: 21.35
6
はまた、これはコンパイルに失敗します。
次のエラーで:
error: no matching function for call to 'USBSerial::println(std::string&)'
編集:Serial.print
程度の粒子ドキュメントへのリンクhttps://docs.particle.io/reference/firmware/core/#print-
「シリアル」とは何ですか?あなたはArduinoにいますか? –
Arduinoと同様に、私はparticle.ioスパークを使用しています。 – koverda
問題を再現し、非標準部品を除外する[MCVE]を提供する必要があります。 –