Je travaille sur la plateforme particle.io Spark, actuellement bloquée en essayant d'imprimer un flottant sous forme de chaîne. J'ai vu quelques solutions où vous employez un train de chaîne pour convertir le flotteur.Conversion float en chaîne C++ échouée avec stringstream
Ma mise en œuvre se présente comme suit ci-dessous:
#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());
}
Il en résulte la sortie suivante:
Temp 1:
Temp 2: 21.35
6
En outre, ce ne peut pas compiler:
Serial.println(tempCString);
Avec l'erreur suivante :
error: no matching function for call to 'USBSerial::println(std::string&)'
Edit: lien vers docs de particules sur les Serial.print
https://docs.particle.io/reference/firmware/core/#print-
Qu'est-ce que 'Serial'? Êtes-vous sur Arduino? –
Semblable à Arduino, j'utilise une étincelle particle.io. – koverda
Il se peut que vous deviez fournir un [MCVE] reproduisant votre problème et omettant les pièces non standard. –