PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C: Hilfe zu Codechnipsel



der2of6
03-12-2005, 12:22
Hallo,
ich habe ein programm bekommen, welches folgenden codeschnipsel enthält:


double time_min;
i=0;
while(zeile[i] != '.')
{
time_min=(time_min*10) + (zeile[i] - '0');
i++;
}

So und nun zu meiner Frage:
was macht das
- '0' ?
Wenn ich es weglasse, dann kommt auf jeden fall etwas falsches raus.
Nur ich habe im Moment überhaupt keine Idee warum.

Kann mir jemand auf die sprünge helfen?

BeS
03-12-2005, 12:31
'0' repräsentiert den ascii Wert von 0.

Du arbeitest hier ja in einem string. Es wird also ein Zeichen ausgelesen, sagen wir es ist die '3'.
'0' hat jetzt z.B. den ASCII Wert 84 und '3' den ASCII Wert '87'.
Jetzt rechnest du 87-84 = 3 und 3 ist ja auch das Zeichen welches du als Zahl haben wolltest. Das ist eine einfache Möglichkeit Plattformunabhängig Zeichen in Zahlen umzurechnen, wenn man eine Zahl als string vorliegen hat.

der2of6
03-12-2005, 12:37
Danke dir!

Ich sollt doch mal einen blick in die ASCII tabelle werfen die hier noch irgendwo liegen sollte *g*