Ich versuche, zwei Zahlen durch ein Leerzeichen getrennt von einer Zeichenfolge zu extrahieren und sie als zwei Ints zu speichern. Zum Beispiel:sscanf Fehler: kann 'String' nicht zu 'const char *' konvertieren
if input_string = "1 95" then:
servo_choice = 1
input_number = 95
Code:
String input_string = "";
int input_number = 0;
int servo_choice = 0;
input_string = Serial.readString();
sscanf(input_string, "%d %d", &servo_choice, &input_number);
Die IDE gibt mir diese Fehlermeldung:
exit status 1
cannot convert 'String' to 'const char*' for argument '1' to 'int scanf(const char*, ...)'
Edit: Ich denke,
input_number = input_string.substring(1,5).toInt();
tatsächlich funktioniert und das tut, was ich wollen. Ich würde immer noch gerne wissen, wie man scanf wenn möglich zum Arbeiten bringt.
Vielen Dank für alle Antworten im Voraus ..
Sie sind in C++ kompilieren, wobei in diesem Fall der Tag auch falsch ist. Bitte aktualisiere das Tag und die Frage. – 2501