Zitat Zitat von robocat
ich habe das dann so gelöst:
...
besonders elegant ist das ja nicht, und braucht sicher auch eine menge speicher. weiss jemand, wie man das einfacher/besser hinbekommt?
gruesse von der katz
weiss nicht ob das eleganter ist, aber weniger Mathe isses

strcpy((char *)UI_str,insert_char((char *)trimm_string(' ',itoa( (ReadChannel(0) * _scaler)/10, (char *)s, 10), 2 ), ',', 1));

// * _scaler gibt die echten Volt ganzahlig hier im Bsp. 500
// :10 weil mir eine Nachkommastelle reicht, gibt also 50
// diese 50 wird nun mit itoa in einen String gewandelt
// und das Komma eingefügt, nach Bedarf auch gerne mit Punkt


char *insert_char(char *s_string, char ins, UBYTE wo)
{ static char _tmp[32]={0};
strncpy(_tmp, s_string, wo);
_tmp[wo]=ins;
_tmp[wo+1]=0;
strcat(_tmp, (char *)(s_string+wo));
//__tmp[3]=0; // nur noch eine Nachkommastelle , wenn 1 Stelle reicht kann man hier Schluss machen
return _tmp;
}