011
21.05.2005, 17:19 Uhr
Fraenky
|
hi! ich hab mich jezt im nachhinein umentschieden mit char weiterzuarbeiten.... da ich nun selber die char-arrays mit for schleifen nach dem jeweiligen zeichen durchsuche..
ich hab aber nun eine andere Frage: ich lass den Eingebenene Text nach "," durchsuchen und ersetze diese durch einen Punkt "."
C++: |
for(i=0; i<=dwEingabeLength; i++) { if(szEingabe[i] == ',') { szEingabe[i] = '.'; } }
|
Nun möchte ich aber mit dieser Fließkommazahl rechnen zB Addition aber es klappt halt nicht. Hiermit ermittel ich zB den ersten Summanden in der Annahme dass er gleich bei szEingabe[0] anfängt...
C++: |
iTemp = 0; for(j=0; j<=iPosSum1; j++) { szSum1[iTemp] = szEingabe[j]; if(j != iPosSum1) { iTemp++; } else { // j == iPosSum1 break; } } fSum1 = atof(szSum1);
|
aber wenn ich halt eine Kommazahl (1,2+5) mit Komma eingebe und dieses dann durch einen punkt erstzt wird (1.2+5), dann steht im fSum1 nur die erste Ziffer (1) ! Bei einer anderen eingabe zB 1,5 steht dort sogar 2! Als wenn er aufgerundet hätte... kann ich kein char (1,2) in eine float (1,2) umwandeln?
Danke! MfG Fraenky -- Welcome to the real World.
www.fraenkysweb.de |