CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
atof
atof
Функция Преобразует строку в число с плавающей точкой. Синтаксис #include <math.h> double atof(const char * s); Файл, содержащий math.h, stdlib.h прототип Описание Функция atof преобразует символьную строку, адресный указатель которой находится в аргументе s, в число с двойной точностью (тип double); данная функция распознает символьное представление числа с плавающей точкой следующего вида: - необязательная строка табуляции и пробелов; - необязательный знак; - строку цифр и необязательную десятичную точку (цифры могут находиться с обеих сторон от точки); - необязательные символы e или E, за которыми следует необязательное целое со знаком. Символы должны соответствовать следующему формату: [пробелы] [знак] [ddd] [.] [ddd] [e|E[знак]ddd] atof также распознает +INF и -INF для плюс и минус бесконечности, +NAN и -NAN для нечисловых значений. Эта функция прекращает преобразование на первом нераспознаваемом символе. strtod аналогична atof; она дает лучшее распознавание ошибок, и поэтому в некоторых случаях предпочтительнее. Возвращаемое atof возвращает преобразованное значение указанной значение символьной строки. В случае переполнения atof возвращает положительное или отрицательное значение HUGE_VAL, глобальная переменная errno устанавливается в ERANGE и функция matherr не вызывается. Переносимость Поддерживается в системах UNIX и определена в ANSI C. Смотрите также atoi, atol, ecvt, fcvt, gcvt, scanf, strtod. Пример: #include<stdlib.h> #include<stdio.h> int main(void) { float f; char *str = "12345.678"; f = atof(str); printf("строка = %s значение = %5.3f\n",str,f); return 0; }