Пространства имён
Варианты
Действия

std::strtof, std::strtod, std::strtold

Материал из cppreference.com
< cpp‎ | string‎ | byte

Определено в заголовочном файле <cstdlib>
float       strtof( const char* str, char** str_end );
(начиная с C++11)
double      strtod( const char* str, char** str_end );
long double strtold( const char* str, char** str_end );
(начиная с C++11)
Интерпретирует значение с плавающей точкой в ​​строку байт, на который указывает str.
Оригинал:
Interprets a floating point value in a byte string pointed to by str.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Функция отбрасывает пробельные символы (определяемые с помощью std::isspace()), пока не будет найден первый непробельный символ. Затем из строки извлекаются символы, необходимые для формирования корректного представления числа с плавающей точкой и преобразуются в непосредственное значение данного числа. Допустимое значение числа с плавающей точкой может быть одним из следующих:

  • десятичное выражение числа с плавающей точкой. Оно состоит из следующих частей:
  • (необязательно) знак плюс или минус
  • непустая последовательность десятичных цифр, которая может в необязательном порядке содержать десятичный разделитель (определяет мантиссу)
  • (необязательно) символ e или E, за которым следует необязательный знак минус или плюс и непустая последовательность десятичных цифр (определяет экспоненту)
  • двоичное выражение числа с плавающей точкой. Оно состоит из следующих частей:
  • (необязательно) знак плюс или минус
  • 0x или 0X
  • непустая последовательность шестнадцатеричных цифр, которая может в необязательном порядке содержать десятичный разделитель (определяет мантиссу)
  • (необязательно) символ p или P, за которым следует необязательный знак минус или плюс и непустая последовательность шестнадцатеричных цифр (определяет экспоненту)
  • выражение бесконечности. Оно состоит из следующих частей:
  • (необязательно) знак плюс или минус
  • INF или INFINITY без учета регистра
  • выражение NaN (Not-a-Number). Оно состоит из следующих частей:
  • (необязательно) знак плюс или минус
  • NAN или NAN(последовательность_символов) без учета регистра символов NAN. последовательность_символов может содержать только буквенно-цифровые символы. Результатом будет значение с плавающей точкой, т.н. тихий NaN (quiet NaN)
Функции устанавливает указатель на которую указывает str_end чтобы она указывала на символ после последнего символа интерпретируются. Если str_end является NULL, он игнорируется.
Оригинал:
The functions sets the pointer pointed to by str_end to point to the character past the last character interpreted. If str_end is NULL, it is ignored.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Параметры

str -
указатель с нулевым байтом строки должны интерпретироваться
Оригинал:
pointer to the null-terminated byte string to be interpreted
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
str_end -
Указатель на указатель на символ .
Оригинал:
pointer to a pointer to character.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Возвращаемое значение

С плавающей точкой значения, соответствующего содержания str на успех. Если преобразованное значение выпадает из диапазона соответствующий тип возвращения, диапазон ошибки и HUGE_VAL, HUGE_VALF или HUGE_VALL возвращается. Если преобразование не может быть выполнено, 0 возвращается.
Оригинал:
Floating point value corresponding to the contents of str on success. If the converted value falls out of range of corresponding return type, range error occurs and HUGE_VAL, HUGE_VALF or HUGE_VALL is returned. If no conversion can be performed, 0 is returned.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Пример

[править] См. также

преобразует байт строки в значение с плавающей точкой
Оригинал:
converts a byte string to a floating point value
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(функция) [edit]
C documentation for strtof, strtod, strtold