Stránka 1 z 1

Konverze "const String" na "int" a "float"

Napsal: 24 úno 2024, 14:15
od jankop
Zdravím,
nějak jsem se zasekl a potřeboval bych poradit.
Na následujícím kódu se snažím ukázat můj problém.

Kód: Vybrat vše

const String StringAsInt = "2458";
const String StringAsFloat = "185.4"; 
int TargetInteger;
float TargetFloat;
void setup() {
  Serial.begin(115200);
  TargetInteger = StringAsInt.toInt;
  TargetFloat = StringAsFloat.toFloat;
}
void loop() {
  // put your main code here, to run repeatedly:
}
Tady je chybové hlášení:
C:\Users\pavel\AppData\Local\Temp\.arduinoIDE-unsaved2024124-13756-1tl0whm.cgr4\sketch_feb24a\sketch_feb24a.ino: In function 'void setup()':
C:\Users\pavel\AppData\Local\Temp\.arduinoIDE-unsaved2024124-13756-1tl0whm.cgr4\sketch_feb24a\sketch_feb24a.ino:7:30: error: cannot convert 'String::toInt' from type 'long int (String::)() const' to type 'int'
7 | TargetInteger = StringAsInt.toInt;
| ^~~~~
C:\Users\pavel\AppData\Local\Temp\.arduinoIDE-unsaved2024124-13756-1tl0whm.cgr4\sketch_feb24a\sketch_feb24a.ino:8:31: error: cannot convert 'String::toFloat' from type 'float (String::)() const' to type 'float'
8 | TargetFloat = StringAsFloat.toFloat;
| ^~~~~~~
exit status 1
Compilation error: cannot convert 'String::toInt' from type 'long int (String::)() const' to type 'int'
Jak udělám co nejjednodušeji konverzi typů, o kterou se pokouším v ukázce kódu ? Už se s tím trápím docela dlouho, ale řešení nenalézám. Dík za každou radu.

Re: Konverze "const String" na "int" a "float"

Napsal: 24 úno 2024, 14:26
od gilhad
IMHO tam chceš do těch proměnných dát výsledek té funkce, nikoli funkci samotnou. Takže abys ji zavolal, tak na konci ještě závorky.

Kód: Vybrat vše


const String StringAsInt = "2458";
const String StringAsFloat = "185.4"; 
int TargetInteger;
float TargetFloat;
void setup() {
  Serial.begin(115200);
  TargetInteger = StringAsInt.toInt();  // <-- závorky tady 
  TargetFloat = StringAsFloat.toFloat();  // <-- a tady
}
void loop() {
  // put your main code here, to run repeatedly:
}

Re: Konverze "const String" na "int" a "float"

Napsal: 24 úno 2024, 15:15
od jankop
D9ky moc.
Opravdu to funguje.