Hallo, ich habe eine etwas längere Parameterliste mit uint8, uint16, float und chars. Wenn ich diese im gesamten ausgeben möchte, welcher ist der beste Weg? - Per sprintf alle in einen langen String formatieren und anschließend ausgeben - Per itoa, dtostrf oder sprintf alle in einen separaten String umwandeln und für alle einen Platzhalterstring bereithalten. - Dritte Möglichkeit: ? Also: Wie macht man so etwas effizient?
ADAC schrieb: > Also: Wie macht man so etwas effizient? Kommt sehr darauf an was du unter effizient verstehst.
Mitlesa schrieb: > Kommt sehr darauf an was du unter effizient verstehst. ditto für: ADAC schrieb: > welcher ist der beste Weg?
ADAC schrieb: > Per sprintf alle in einen langen String formatieren und anschließend > ausgeben wenn man genug RAM hat und es schnell genug ist, ist es Programmiertechnisch das einfachste. > Per itoa, dtostrf oder sprintf alle in einen separaten String > umwandeln und für alle einen Platzhalterstring bereithalten. wenn man wenig speicher hat und es möglichst schnell gehen soll, dann so. > Dritte Möglichkeit: ? es Binär ausgeben.
Am ende macht sprintf nichts anders als "itoa, dtostrf...". Wenn du printf/sprintf öfter nutzt wirst du nicht wirklich einen unterschied merken. Weder im Flash-Verbrauch noch in der Ausführungszeit.
ADAC schrieb: > - Per itoa, dtostrf oder sprintf alle in einen [separaten] String > umwandeln und direkt ausgeben. Nicht die Strings sammeln, sondern direkt ausgeben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.