Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Проеобразование типов: float в LPTSTR


Автор: Alca 23.6.2008, 22:16
Проеобразование типов: float в LPTSTR?

Автор: mrbrooks 24.6.2008, 08:23
Код


float fl = 15.1515f;
char tmp[100];
sprintf(tmp,"%f",fl);
LPTSTR buf;
USES_CONVERSION;
CA2T conv(tmp);
buf  = conv.operator LPTSTR(); //готово
//проверка
char *p = T2A(buf);
cout << p << endl;
getchar();


Компилил в VS 2005

Автор: chaos 24.6.2008, 08:42
Код

float dValue = 3.14159;
CString soValue;
soValue.Format(_T("%f"), dValue);

std::ostringstream oss;
oss << dValue;
soValue = CString(oss.str().c_str());


Добавлено через 2 минуты и 7 секунд
mrbrooks, только  что заметил :( тема создана в разделе борланд, сомневаюс что там есть классы преобразования и систринги

Автор: mrbrooks 24.6.2008, 08:54
Я думаю имхо что Alca все таки ориентировался в своем вопросе на студию. Гы. Так что все в тему  smile 

Автор: ama_kid 24.6.2008, 10:05
хм... а зачем так сложно?
Код
#define UNICODE
#define _UNICODE_
...
 double fl = 15.1515f;
 LPTSTR buf = new TCHAR[100];
 swprintf(buf,L"%f",fl);
...
 delete buf;
Работает вроде и в билдере и в студии...  smile 

Автор: Alexeis 24.6.2008, 10:14
Это сишный вариант, но без намека на юникод smile
Код

    float fl = 15.1515f;
    char tmp[100];
    _gcvt(fl, 6, tmp);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)