2009-03-23 6 views
1

J'ai une application C++ où je remplace un certain nombre de fonctions sscanf par atoi, atof, etc ... pour des raisons de performances. Le code est basé sur TCHAR, donc _stscanf est remplacé par _ttoi et _ttof. Sauf qu'il n'y a pas de _ttof sur Windows Mobile 5, ni même de _wtof pour le support explicite des caractères larges. J'ai fini par utiliser _tcstod à la place, mais cela prend un paramètre supplémentaire qui ne m'intéresse pas. Donc, des idées pour lesquelles il n'y a pas de _ttof, _tcstof() ou _wtof dans Windows Mobile 5.0. It's there in VS2005. Est-ce que je manque quelque chose de vraiment évident ici?Où est la version Unicode d'atof dans Windows Mobile

+0

Quel est votre problème de NULL passe dans le paramètre supplémentaire de la fonction _tcstod? – sergiol

Répondre

1

L'un des problèmes de Windows Mobile est la taille de la RAM et de la ROM sur le périphérique. Par conséquent, beaucoup de routines redondantes sont supprimées pour s'assurer que le système d'exploitation est aussi petit que possible.

0

Si les données que vous souhaitez convertir est garanti être uniquement dans le jeu de caractères ASCII, vous pouvez toujours le transformer en ASCII et chat atof, atol, atoi & amis.

Je veux dire si vous avez quelque chose comme ça (pseudo-code):

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

from_TCHAR_to_ascii(buf_T,buf_char); 

atoi(buf_char); 
Questions connexes