Re: Formátovaný tisk bylo Re: sprintf - co delam blbe?
Jan Waclawek
konfera na efton.sk
Úterý Duben 16 23:36:48 CEST 2024
Ten program sa Vam formatovanim zmrsil
https://list.hw.cz/pipermail/hw-list/2024-April/571392.html , dovolil som
si ho rekonstruovat:
String Fultoa(uint32_t val,uint8_t length,uint8_t decimal) {
char buf[11];
uint32_t k=100;
for (uint8_t i = 3;i < length; i++) k*=10;
ultoa(val+k, buf, 10);
for (uint8_t i = 0; i < length - decimal - 2; i++) {
if (buf[i + 1] == '0')
buf[i] = ' ';
else
buf[i] = buf[i + 1];
}
buf[length - decimal - 2] = buf[length - decimal - 1];
buf[length - decimal - 1] = '.';
return buf;
}
Serial.println(Fultoa(1,10,3));
Serial.println(Fultoa(987654321,10,2));
Serial.println(Fultoa(21,3,1));
Nepouzivam C++. V C by to fungovalo len nahodou kvoli lokalnemu buffru.
Miestni C++ guruovia prosim vysvetlite ako to instancovanie/deinstancovanie
objektu triedy String tu funguje.
wek
Další informace o konferenci Hw-list