String in int umwandeln
-
Hallo,
hab ein kleines Problem.
Ich möchte einen String, welcher vom ComPort gelesen wird, in int umwandeln, so dass ich Messwerte sehen kann.
Hier ein Ausschnitt:
int Text1;
ComPort->Active=true;
String Text = ComPort->ReadString();
Memo->SelText = Text; //Hier stehen irgendwelche ZeichenText1 = atoi(Text); // Hier ist mein Problem beim Umwandeln ??????
Label1->Caption = Text1;Wer kann mir da helfen??
mfg alk
-
Hi,
in der FAQ gibt es dazu einen guten Eintrag:
http://www.c-plusplus.net/forum/viewtopic.php?t=39488.
-
Weshalb willst du einen Integer? Wenn du es ausgibst, musst du es ja eh wieder in eine Zeichenkette umwandeln.
-
es kommen Messwerte hoch, die Zahlen sind. Zeichenkette gehen natürlich auch.
-
Hier noch eine andere einfach zu verstehende Version zum konvertieren von String zu int
// Funktion strToInt() - konvertiert Zahlen aus einem String zu einem unsigned int Datentyp. // Argumente: String vom Typ string, welcher die zu konvertierenden Zahlen enthaelt. // Return Wert: Konvertierte Zahl vom Typ unsigned int. unsigned int strToInt(string str) { unsigned int i, j; int zahl = 0; for(i = 0; i < str.length() && isspace(str[i]); i++) ; j = i; while(j < str.length()) { if(!isdigit(str[j])) return -1; else ++j; } for( ; i < str.length(); i++) { zahl = zahl * 10 + (str[i] - '0'); } return zahl; }
Caipi
-
Bekomme das nicht hin.
Hab immer noch Probleme mit der konvertierung.
Möchte einen String vom Controller auf die RS232 in Borland Builder darstellen, also nur String Teile in verschiedene Label.
Schreibe jetzt zur Com1 eine String (char), sehe ihn auch einen Memo, bekomme die Werte einfach nicht zurück gewandelt. Entweder habe ich diverse Zeichen oder "0".
Hab jetzt diverse FAQ probiert, hab öffters Probleme mit Char zu int.
Hat Jemand noch einen Einfall.
-
Hab es hin bekommmen, war mein Fehler. In der Initalisierung der Schnittstelle im Controllerprog. war ein Fehler.
Vielen Dank für die Hilfe.
mfg ahl