Преобразование типов (char to float) C/C++
- Speccyfan
- Неотъемлемая часть форума
- Сообщения: 540
- Зарегистрирован: 18 дек 2004, 15:15
- Откуда: Polotsk
- Контактная информация:
Преобразование типов (char to float) C/C++
Здравствуйте!
Необходимо строку сконвертить в float, как это можно сделать на gcc ?
Везде натыкаюсь на функцию atof(), но это для борландовского Си, а мне же под пингвином надо. Обратное преобразование можно сделать при помощи sprintf, а вот для char to float никак нигде не найду примера.
Хелп плиз!
Необходимо строку сконвертить в float, как это можно сделать на gcc ?
Везде натыкаюсь на функцию atof(), но это для борландовского Си, а мне же под пингвином надо. Обратное преобразование можно сделать при помощи sprintf, а вот для char to float никак нигде не найду примера.
Хелп плиз!
Best Regards, Yury Konovalov aka Speccyfan (2:453/53)
Registered Linux User #379588
Registered Linux User #379588
- Victor Gr.
- Неотъемлемая часть форума
- Сообщения: 891
- Зарегистрирован: 13 авг 2004, 15:39
- Откуда: Минск
- Контактная информация:
Speccyfan,
atof() определена в stdlib.h и есть в стандарте ANSI C.
atof() определена в stdlib.h и есть в стандарте ANSI C.
Код: Выделить всё
#include <stdio>
#include <stdlib>
int main(void) {
char * str = "3.1498";
float a = 0;
printf ("%s\n", str);
a = atof(str);
printf ("%f\n", a);
return 0;
}
-
- Интересующийся
- Сообщения: 65
- Зарегистрирован: 03 апр 2008, 18:54
- Откуда: Родом: Чернавчицы, Брест, Бульбастан; Сейчас: Оломоуц, Чехия.
Re: Преобразование типов (char to float) C/C++
Например в дебяне есть пакет http://packages.debian.org/manpages-dev . Поставив его и набравSpeccyfan писал(а):Здравствуйте!
Необходимо строку сконвертить в float, как это можно сделать на gcc ?
Везде натыкаюсь на функцию atof(), но это для борландовского Си, а мне же под пингвином надо. Обратное преобразование можно сделать при помощи sprintf, а вот для char to float никак нигде не найду примера.
Хелп плиз!
Код: Выделить всё
sh$ man atof
http://kerneltrap.org/search/node/atof
Прошу обратить внимание, что atof() не детектирует ошибки (кривой ввод) и возвращает double.