Re: Teilstring in Integer umwandeln? Kategorie: Programmierung (von André H. - 17.07.2002 21:07) | |
Als Antwort auf Re: Teilstring in Integer umwandeln? von KlaRa - 17.07.2002 19:53
| |
Hallo Klaus & Torsten, man kann die Funktion noch vereinfachen: function Str2Int(byte s[]) returns int {byte i; int Zahl; Zahl=0; if s[31]==0 return -1 for I=s[31]-1 ... 0 { if (s[i]>=0x30 and s[i]<=0x39) { Zahl=Zahl*10; Zahl=Zahl+(s[i]-0x30); } else { if s[i]=='-' Zahl=not(Zahl)+1; else return -1; } return Zahl; } MfG André H. > > Hallo, > > Ich bin wohl zu doof für die CC2 Programmierung, aber ich hab folgendes Problem. > > Ich bekomme von einem Gerät über die hwcom einen String, der z.B. folgenderma�en aussieht: > > "X5 = 32 t" > > Jetzt würde ich gerne mit dem Wert 32 als Integer weiterrechnen. Was muss ich also anstellen, damit ich aus dem String die 32 als Integer-Wert erhalte? > > > > Gruss > > Torsten > > Hallo, > > hier eine Function: > > > //------------------------------------------ > // Klaus Rawski, 28.12.2001 > //------------------------------------------ > function Str2Int(string cWert) returns int > { > int i; > int iRet; > int iLen; > int iFaktor; > byte bChar; > > iRet = 0; > iFaktor = 1; > iLen = str.length(cWert) - 1; > if iLen >= 0 > { > for i = iLen ... >= 0 step -1 > { > bChar = Getchar(cWert, i); > if bChar >= 48 and bChar <= 57 > { > iRet = iRet + (bChar - 48) * iFaktor; > iFaktor = iFaktor * 10; > } > else > { > iRet = -1; > break; > } > } > } > else > { > iRet = -1; > } > > return iRet; > } > Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | |
Antwort schreiben Antworten: |