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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 128, средняя оценка - 4.96
nikkka
Мат в 32 хода
235 / 170 / 8
Регистрация: 10.09.2009
Сообщений: 1,096
#1

atof и atoi - C++

08.01.2010, 10:10. Просмотров 16986. Ответов 4

Помогите пожалуйста, разобратся что такое atof, atoi, как работает, что делает?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2010, 10:10     atof и atoi
Посмотрите здесь:

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

Функции atoi и atof - C++
Здравствуйте, пишу парсер для файла определенного формата (фактически лексический и синтаксический анализаторы), так вот среди данных...

Почему если во вторую и третью строку, вводить сперва символы а потом числа. То 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>) как это делается скажите...

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

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

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

Функция atof() возвращает не точное значения - C++
Добрый день подскажите может кто знает есть программа в MFC фрагмент кода void Ce_weightDlg::OnBnClickedButton1() // зважування { ...

Как написать свою функцию atof() - C++
Как написать свою функцию atof()?

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

atoi - C++
short x char chm; ...цикл, присваиваем chm значение... x = atoi (chm); if ( x < 32768) { cout <<...

atoi() - C++
программа элементарная - надо считать строку "x=int1+int2" где int1 и int2 не известные зарание значения int; надо вывести int1+int2; не...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
08.01.2010, 10:40     atof и atoi #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Эти функции превращают массив символов (строку), которая хранит число в один из числовых типов (первая функция в double, вторая в int). Например:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cstdlib>
using namespace std;
 
int main()
{
    char strint[] = "137";
    char strfloat[] = "137.137";
    
    int i = atoi(strint);
    double f = atof(strfloat);
    
    cout << "int " << i << endl;
    cout << "float " << f << endl;
    
    return 0;
}
Хотя я бы предпочел другие функции для этих целей. Например вот так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <cstdio>
using namespace std;
 
int main()
{
    char strint[] = "137";
    char strfloat[] = "137.137";
    
    int i;
    double f;
    
    sscanf(strint, "%d", &i);
    sscanf(strfloat, "%lf", &f);
    
    cout << "int " << i << endl;
    cout << "float " << f << endl;
    
    return 0;
}
outoftime
║XLR8║
507 / 429 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
08.01.2010, 13:32     atof и atoi #3
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
Хотя я бы предпочел другие функции для этих целей
более подробно можете обьяснить?
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
08.01.2010, 17:50     atof и atoi #4
Цитата Сообщение от outoftime Посмотреть сообщение
более подробно можете обьяснить?
C
1
int sscanf(char *s, const char format, ...)
Функция sscanf эквивалентна fscanf за исключением того, что параметр s определяет не поток, а строку, из которой происходит ввод данных.
Ловко, Граф. Однако!
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.01.2010, 18:18     atof и atoi #5
atof и atoi - это обёртки для strtod и strtol
strtod и strtol мощнее обёрток потому что проверяют получившееся число на переполнение и на потерю значимости, выставляя errno в соответствии с ошибкой
потеря значимости может быть у atof и strtod
переполнение может быть у всех
Yandex
Объявления
08.01.2010, 18:18     atof и atoi
Ответ Создать тему
Опции темы

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