Описание функций Си

       

Strtod



     strtod

Функция Преобразует строку в число двойной точности.

Синтаксис #include

double strtod(const char *s, char **endptr);

Файл, содержащий string.h прототип

Описание strtod преобразует символьную строку s в число двойной точности. Строка s - это последователь- ность символов, которая может быть интерпретиро- вана, как значение двойной точности; Символы дол- жны соответствовать следующему формату:

[ws] [sn] [ddd] [.] [ddd] [fmt[sn]ddd], где

[ws] - необязательный незначащий символ пробела; [sn] - необязательный знак (+ или -); [ddd] - необязательные цифры; [fmt] - необязательные символы e или E; [.] - необязательная десятичная точка.

strtod также распознает +INF и -INF как плюс и минус бесконечность, и +NAN и -NAN как не число.

В качестве примера ниже приведены некоторые сим- вольные строки, которые функция strtod может кон- вертировать в число двойной точности:

+1231.1981 е-1 502.85Е2 -2010.952

strtod прекращает чтение строки на первом встре- тившемся символе, который не может быть интерпре- тирован, как соответствующая часть числа двойной точности.

Если параметр endptr не NULL, функция strtod присваивает endptr указатель на символ, который остановил считывание (*endvar = &stopper). Этот параметр используется для обнаружения ошибок.

Возвращаемое strtod возвращает значение s как число значение двойной точности. В случае переполнения она возв- ращает положительное или отрицательное значение HUGE_VAL.

Переносимость strtod поддерживается на системах UNIX и совме- стима с ANSI C.

Смотрите также

Пример:

#include

#include

int main(void) { char input[80],*endptr; double value; printf("Введите число с плавающей точкой: "); gets(input); value = strtod(input,&endptr); printf("Строка: %s, число: %lf\n",input,value); return 0; }



Содержание раздела