Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Преобразуване на типове данни (float to char[]) ?
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=4322
Страница 1 от 1

Автор:  smollov [ Съб Юни 09, 2007 6:40 pm ]
Заглавие:  Преобразуване на типове данни (float to char[]) ?

Интересува ме има ли такава функция, която да преобразува float to char[];
Например:

float fNumber = 123.45;
char ch[10];


Резултатът трябва да бъде:

ch[0] = '1';
ch[1] = '2';
ch[2] = '3';
ch[4] = '.';
ch[5] = '4';
ch[6] = '5'

Благодаре Ви предварително

Автор:  danov [ Съб Юни 09, 2007 7:07 pm ]
Заглавие: 

sprintf

Автор:  t_i_t_o [ Съб Юни 09, 2007 8:05 pm ]
Заглавие: 

ftoa() :)

Автор:  BrainStorm [ Съб Юни 09, 2007 8:52 pm ]
Заглавие: 

t_i_t_o написа:
ftoa() :)
... няма такова :D (поне не в стандартните библиотеки)

Автор:  HCL [ Съб Юни 09, 2007 9:34 pm ]
Заглавие: 

Код:
long buf;

fNumber *= 100;
buf = (long)fNumber;
ch[3] = '.';

for (int i=5; i>=0; i--)
{
if(i==3) continue;
ch[i] = buf%10 + 0x30;
buf /= 10;
}


Това е дьрвено :) , но би могло да даде насока.
Размерьт на масива е намален с едно, понеже предполагам че 3-ия елемент е замислено да е '.'

Автор:  Ки4о [ Съб Юни 09, 2007 9:55 pm ]
Заглавие: 

Ползвай това което ти каза @danov и няма да сбъркаш:

float d;
char outString[8];
sprintf(outString,"%5.2f",d);

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/