Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
Eliador
12 / 12 / 2
Регистрация: 18.05.2011
Сообщений: 83
#1

Функции atoi и atof - C++

04.08.2011, 08:57. Просмотров 1607. Ответов 4
Метки нет (Все метки)

Здравствуйте, пишу парсер для файла определенного формата (фактически лексический и синтаксический анализаторы), так вот среди данных имеются числовые значения, как целые так и с плавающей точкой. для преобразования этих чисел из строкового представления хочу собственно использовать функции atoi и atof, но еще есть желание сохранить платформо-независимость, т.е. сделать этот парсер кросс-платформенным.

Так вот, являются ли эти две функции (atoi и atof) платформо-независимыми?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.08.2011, 08:57     Функции atoi и atof
Посмотрите здесь:

Atoi, atof. - C++
Подскажите пожалуйста, как с помощью функций atoi, atof, проверить, является ли данное число действительным? Добавлено через 21 минуту...

atof и atoi - C++
Помогите пожалуйста, разобратся что такое atof, atoi, как работает, что делает?

Почему если во вторую и третью строку, вводить сперва символы а потом числа. То atoi, atof выводят "0" - C++
#pragma hdstop #include <stdio.h> #include <conio.h> #define eof 26 #define max 1000 #include <stdlib.h> getline(char s, int...

использование функции atof - C++
требуется в качестве параметра на atof подавать не char* а string переменную(из библиотеки <string>) как это делается скажите...

Преобразование char* в double (функции atof и strtod) - C++
Добрый вечер и с праздником!!! Возник вопрос с функциями atof и strtod. А точнее проблемы с округлением (пример: вводим с консоли "0,3" ,...

функции atoi и itoa - C++
у меня есть параметр типа unsigned char* , мне нужно его перевести в тип int, добавить к нему какое-то целое число, напрмиер 10, и...

Как заменить функции strset и atoi? - C++
Пожалуйста без приколов, мне реально интересно.

atof округляет число - C++
Здравствуйте, мне необходимо считать коэффициенты из текстового файла и обработать их, проблема возникла при преобразовании символов в...

Русский шрифт и функция atof() - C++
Привет всем! Подскажите, как правильно в программах на С++ делать вывод русского шрифта в консоль. Я пишу такую строку: ...

X=atof(s.c_str()); - ошибка в Builder10 - C++
Здравствуйте ! Помогите, пожалуйста, чайнику. Проблема такая: Создаю учебный проект простого калькулятора. Обработчик щелчка по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
1926 / 1192 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.08.2011, 09:56     Функции atoi и atof #2
Могу ошибаться, но являются. Только для си проще sscanf использовать.
Но для плюсов лучше boost::lexical_cast, быстрее работает.
C++
1
2
3
4
5
6
7
#include <iostream>
#include <boost/lexical_cast.hpp>
int main(){
    std::string buf("123");
    int x = boost::lexical_cast<int> (buf);
    std::cout << x;
}
Eliador
12 / 12 / 2
Регистрация: 18.05.2011
Сообщений: 83
04.08.2011, 10:24  [ТС]     Функции atoi и atof #3
Спасибо. Раз так буду использовать то что вы предложили, хотя в принципе скорость для меня не так критична, но раз можно увеличить производительность, без каких либо других потерь, используя предложенные вами функции, то конечно буду юзать их.
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
04.08.2011, 10:44     Функции atoi и atof #4
Цитата Сообщение от Eliador
Так вот, являются ли эти две функции (atoi и atof) платформо-независимыми?
они стандартные
при переполнении они не обязаны сообщать об ошибке
если нужно учитывать переполнение, используй strtod() и strtol()
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
04.08.2011, 19:56     Функции atoi и atof #5
accept правильно все говорит
Yandex
Объявления
04.08.2011, 19:56     Функции atoi и atof
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru