String formatieren
-
Hallo gibt es in C eine Funktion, womit ich String's abschneiden kann. Z.B. gibt es in C# die Funktion Right() bzw. Left() womit ich die Strings abschneiden kann.
Gibt es sowas einfaches auch in C?
Das Problem ist, dass ich scientific numbers z.B. 1.221e-13 habe. Ich aber brauche nur die Hochzahl. Gibt es sowas?
Viele Grüße
simsa
-
strtok oder sscanf,...
-
In C gibt es keine gleichgültigen Funktionen.
// Wenn du den restlichen String verwerfen kannst, dann kannst du einfach hinter // den benötigten String ein Null-Byte schreiben char str[]="erster teil zweiter teil"; str[11]=0; // Strings mit Nullbyte teilen // oder char teil[12]; // Platz für Zeichen und Nullbyte reservieren strncpy(str, teil, 11); teil[11]=0;
Den Code kannst du dann auch umschreiben um die Funktionalität der Funktion right nachzubilden
-
simsa schrieb:
Das Problem ist, dass ich scientific numbers z.B. 1.221e-13 habe. Ich aber brauche nur die Hochzahl. Gibt es sowas?
wenn die zahlen nicht negativ sind dann log10(x) z.b., oder floor(log10(x)+0.5)
-
char *findE(char *str){ char *ret = str; while(*str && *str != 'e') str++; if(*str){ *str=0; return str+1; } return ret; }
versuch doch mal sowas, c hat eben nicht für alles ein wässerchen
lg lolo