Форум: "WinAPI";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
Внизпреобразование типов Найти похожие ветки
← →
***_Diman_*** (2005-07-21 20:02) [0]немного не в тему, звиняйте. не работает такая вещь
WCHAR szBuffer[10] = тут число в виде ессно строки > "25.00"
float (или double) x;
x = atof(LPCSTR(&Buffer));
вывожу x
wsprintf(szBuffer,TEXT("%.2f"),x);
в szBuffer почему то уходит просто 2.00... ???
какая-то странная конверсия... что не так ?
← →
Fay © (2005-07-21 20:09) [1]2 **_Diman_*** (21.07.05 20:02)
atof, wsprintf - это из какого юнита? А то у меня не компилится...
8)
← →
Eraser © (2005-07-21 20:36) [2]***_Diman_*** (21.07.05 20:02)
что не так ?
а как надо?
Fay © (21.07.05 20:09) [1]
это из какого юнита?
;-)
← →
***_Diman_*** (2005-07-22 06:35) [3]ну и что, что это си... :) здесь многие и си знают, а лучшего форума я ещё не встречал, может здесь помогут
← →
***_Diman_*** (2005-07-22 06:38) [4]Eraser © (21.07.05 20:36) [2]
а как надо?
Что значит "как надо?" надо чтобы число корректно преобразовывалось. 25.00 преобразуется в 2.00 - это явно ненормально. в дельфи это легко и просто но жизнь заставляет си пользовать, а вот с ним несколько проблемно работать
← →
alpet © (2005-07-22 07:03) [5]MSDN мало читаем. Функция atof (AnsiToFloat) не может работать с юникодовскими строками. В библиотеке Visual C(++) есть парная ей _wtof - как раз для этих целей. Мне еще не понятно, почему у вас компилятор не ругается, на несоотвествие типов.
← →
***_Diman_*** (2005-07-22 07:56) [6]>alpet
Пасибки, попробую аналог! А в хелпе ни слова о _wtof! поищу... atof работает, но "подхватывает" только первый символ строки, я уж думаю ну неужели все остальные невалидные? ещё раз сенькс.
← →
***_Diman_*** (2005-07-22 08:56) [7]Мдя... На _wtof ругнулся, сказал undeclared identifier. Весь хелп облазил - никакого эффекта. atol (!) исправно возвращает long с целой частью числа, т.е. из 25.35 вытаскивает 25, atof же выдирает только первую цифру из буфера (ну как уже говорил). Юзаю eMbedded ЦЭ ++ 4.0 может это ЦЭ такой корявый? Как преобразовать строку в float/double ? Если не в лом просветите, сильно благодарен буду.
← →
dmitry501 © (2005-07-22 09:02) [8]Насколько я знаю в PocketPC все строки тока в unicode. Поэтому в eVC нет wtof, т.к. это atof
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c