Re: sprintf - co dělám blbě?

Miroslav Mraz mrazik na volny.cz
Pondělí Duben 15 18:38:07 CEST 2024


Nevím, jestli je to jednoduše, protože je v tom rekurze

static constexpr unsigned BASE = 10u;
static constexpr unsigned DP   = 3u;
unsigned utos (char * ptr, const unsigned n, const unsigned d = 0u) {
   unsigned res = 0;
   const unsigned m = n / BASE;
   const unsigned z = n % BASE;
   if (m > 0 or d < DP) {
     res += utos (ptr, m, d + 1u);
     ptr += res;
   }
   * ptr++ = '0' + z;  res++;
   if (d == DP) { * ptr++ = '.'; res++; }
   * ptr = '\0';
   return res;
}

ale funguje to od 0. Pro celá kladná čísla.

Mrazík

On 15. 04. 24 17:25, Jan Waclawek wrote:
>> JEDNODUŠE
> 
> To je nova poziadavka, o tej sme sa doteraz vobec nebavili.
> 
> Ale ano, ak je priorita JEDNODUŠE, tak pokojne arduino, double, printf(),
> trebars aj micropython alebo PICAXE.
> 
> V mcu neexistuje NAJLEPSIE, vzdy je to o poziadavkach a kompromisoch.
> 
> wek
> 


Další informace o konferenci Hw-list