Nevím, jestli na to není něco chytřejšího, ale možná bude potřeba použít něco jako
if ( sys[5] < 10 ) ... echo "0"
...a pak v každém případě
echo (sys[5])
omlouvám se, že to neumím zapsat přímo v SDS syntaxi, ale SDS-C je hodně "komplikované" a neumím ho
Budete muset nějak použít label a goto.
Osobně používám skvělý pre-procesor https://github.com/MightyPork/sdscp
V kódu se pak dokážu vyznat i po delší době, protože je to mnohem podobnější běžnému C.
Ve svém programu mám funkci, která do pole text na určenou pozici "index" vloží teplotu na jedno destinné místo. Není to sice 0 před celou částí čísla, ale nula před desetinou částí. Ale přiznám se, že už nevím, proč to vlastně mám takto.
teplota_str(teplota, index) {
var cela = teplota / 100;
var des = _abs(teplota % 100);
sprintf(text[index], cela, ".");
if ( des < 10 ) {
sprintf(text[_SPRINTF_END], "0");
}
sprintf(text[_SPRINTF_END], des, "C");
return index;
}
// použití....
var tstrt = teplota_str(_TEMP[cidlo], 20); // na pozici 20 v poli text[] uloží teplotu, např. 5.08C nebo 12.30C nebo 21.41C
echo(" teplota: ", text[tstrt])