Где Unicode версия atof в Windows Mobile - PullRequest
1 голос
/ 23 марта 2009

У меня есть приложение на C ++, где я заменяю ряд функций sscanf на atoi, atof и т. Д. По соображениям производительности. Код основан на TCHAR, поэтому его можно заменить _stscanf на _ttoi и _ttof . За исключением того, что в Windows Mobile 5 нет _ttof или даже _wtof для явной поддержки широких символов. Вместо этого я использовал _tcstod, но для этого нужен дополнительный параметр, который меня не очень интересует. Поэтому есть идеи, почему в Windows Mobile 5.0 нет _ttof, _tcstof () или _wtof. Это есть в VS2005 . Я что-то упускаю здесь действительно очевидное?

Ответы [ 2 ]

1 голос
/ 23 марта 2009

Одной из проблем Windows Mobile является размер ОЗУ и ПЗУ на устройстве. Поэтому многие избыточные подпрограммы удалены, чтобы убедиться, что ОС настолько мала, насколько это возможно.

0 голосов
/ 24 марта 2009

Если данные, которые вы хотите преобразовать, гарантированно находятся только в кодировке ASCII, вы всегда можете преобразовать их в ASCII и cat atof, atol, atoi & friends.

Я имею в виду, если у вас есть что-то вроде этого (псевдокод):

TCHAR buf_T[20]=_T("12345");
char buf_char[20];

from_TCHAR_to_ascii(buf_T,buf_char);

atoi(buf_char);
...