bigpoint Geschrieben 28. Februar 2005 Geschrieben 28. Februar 2005 Warum kommt er nicht in if Bedingung rein ? CString s = "8538710019"; if(atol(s) > 8000000000 && atol(s) < 10000000000) cout << (const TCHAR*)s << endl; [/PHP]
bigpoint Geschrieben 28. Februar 2005 Autor Geschrieben 28. Februar 2005 ok ich glaube es ist schon spät ich sollte atof benutzen
Klotzkopp Geschrieben 28. Februar 2005 Geschrieben 28. Februar 2005 if(_atoi64(s) > 8000000000 && _atoi64(s) < 10000000000) cout << s << endl;[/CODE] Der Cast bei cout ist unnötig.
bigpoint Geschrieben 28. Februar 2005 Autor Geschrieben 28. Februar 2005 und warum _atoi64 und nicht atof
Klotzkopp Geschrieben 28. Februar 2005 Geschrieben 28. Februar 2005 und warum _atoi64 und nicht atofHier ist es noch egal, wenn man nur das Ergebnis betrachtet. Aber sobald du Zahlen mit mehr als 15 Stellen hast, bist du mit double am Ende der Genauigkeit angekommen. Mit __int64 hast du immerhin fast 19 Stellen. Allgemein solltest du auf Fließkommatypen verzichten, wenn es mit Ganzzahltypen auch geht.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden