Convertir CString à flotter dans le mfc
comment puis-je convertir un CString variable à virgule flottante?
(Je suis en utilisant visuall c++ 6.0 et le MFC)
Je suis en train d'utiliser une zone d'édition pour renvoyer une valeur à laquelle je suis en train de mettre dans un tableau de floating points. Je suis l'Aide de la méthode GetWindowText pour obtenir la valeur, qui renvoie une CString. J'ai donc besoin de les convertir à virgule flottante. (ou suis-je juste faire des choses complètement dans le mauvais sens?).
J'imagine qu'il existe des méthodes pour le faire déjà dans le MFC.(ont déjà utilisé la méthode de mise en forme pour convet à une CString afficher les valeurs dans le tableau dans la zone d'édition)
Grâce.
OriginalL'auteur karthik | 2011-04-26
Vous devez vous connecter pour publier un commentaire.
il vous suffit de faire
MODIFIER
Également utiliser cette fonction:
La lecture d'une chaîne de valeur et d'analyser/convertir à flotteur permet de localiser l'erreur quand il y en a un. Vous avez besoin d'une aide d'une fonction d'Exécution C: strtod() ou atof().
Je préfère strtod comme deuxième argument renvoie un pointeur sur la chaîne où l'analyser fin:
CString pi = _T("3.14");
si il va utiliser _ttof()si l'application prend en charge les caractères unicode, alors vous devriez utiliser _T() Macro sinon pas besoin de cette macro.
Tout d'abord, il est 2011. Les applications doivent en charge Unicode. Et deuxièmement, si l'application prend en charge Unicode, vous devez utiliser L"Chaîne" et _wtof. Si ce n'est pas, "String" et atof. _T("String") et _ttof sont des versions génériques de la carte à la bonne selon les paramètres du projet. Mais le mélange de "Chaîne" et _ttof est le mélange d'un ANSI littérale avec une fonction générique, qui accidentellement travaille dans un non-unicode construire, mais il est mauvais.
OriginalL'auteur karthik