Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.11;
Скачать: CL | DM;

Вниз

преобразование типов   Найти похожие ветки 

 
***_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 вся ветка

Текущий архив: 2005.09.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
2-1123593226
DeepProg
2005-08-09 17:13
2005.09.11
ADOQuery.Open. SELECT


11-1106905612
MTsv DN
2005-01-28 12:46
2005.09.11
МультиВыбор в OpenSaveDialog


14-1124310339
vecna
2005-08-18 00:25
2005.09.11
надумал заняться апгрейдом, появились вопросы по железу...


14-1124281539
oldman
2005-08-17 16:25
2005.09.11
Вчера умер Гомельский.


1-1124370115
Aleksandr.
2005-08-18 17:01
2005.09.11
Почему Excel не понимает формат даты?