Der Unterschied _ttof, atof, _atof_l, _wtof, _wtof_l in C++ und C ist, dass diese verschiedene Eingaben haben, aber die Ausgabe immer eine Gleitkommazahl sind!Wie Sie sich vorstellen können, gibt es unter all diesen Funktionen Gute und Schlechte. Es gibt zum Beispiel veraltete Funktionen seit den ersten Versionen der libc, die aus Kompatibilitätsgründen nie entfernt wurden. Es ist daher nicht sehr überraschend, dass wir manchmal heilige Perlen in der Bibliothek entdecken. Zu diesen Perlen gehören die Funktionen atoi () , atol () und atof () ,_wtof(), _ttof mit denen eine Zeichenfolge in eine kurze ganze Zahl, eine lange ganze Zahl und eine Gleitkommazahl umgewandelt werden kann. Um einen wchar zu konvertieren, verwendet man: _wtof, _wtof_l Um einen char zu konvertieren, verwendet man: atof, atof_l Bei einem gemischten Programm in _UNICODE und Nicht-UNICODE greift man zu _ttof, dass dieser je nach Definition sich anpasst. (ist in <tchar.h> definiert) #include <tchar.h>
// CString zu int Konvertierungscode CString strText = _T ("123"); int n; n = _ttoi (strText); // In Ganzzahl konvertieren //Ergebnis: n = 123 //CString zum doppelten Konvertierungscode CString strText = _T ("123.456"); double d; d = _ttof (strText); // In eine Gleitkommazahl konvertieren //Ergebnis: d = 123,456 atof(" 33.364 ") = 33.364
_wtof(L" 333.64") = 333.64 atof("3.14127") = 3.14127 atof(" -2,309e-25") = -2.000000e+00 _atof_l(" -2,309e-25", fr)) = -2.309000e-25 FAQ 24: Aktualisiert am: 11 April 2020 15:44 |