std:: nan, std:: nanf, std:: nanl
|
Определено в заголовке
<cmath>
|
||
|
float
nanf
(
const
char
*
arg
)
;
|
(1) | (начиная с C++11) |
|
double
nan
(
const
char
*
arg
)
;
|
(2) | (начиная с C++11) |
|
long
double
nanl
(
const
char
*
arg
)
;
|
(3) | (начиная с C++11) |
Преобразует строку символов arg в соответствующее значение тихого NaN, как если бы вызывалась функция std::strtof , std::strtod или std::strtold соответственно.
Содержание |
Параметры
| arg | - | узкая символьная строка, идентифицирующая содержимое NaN |
Возвращаемое значение
Тихий NaN, соответствующий идентифицирующей строке arg или ноль, если реализация не поддерживает тихие NaN.
Если реализация поддерживает арифметику с плавающей запятой IEEE (IEC 60559), она также поддерживает тихие NaN.
Обработка ошибок
Эта функция не подвержена ни одному из условий ошибок, указанных в math_errhandling .
Пример
#include <cmath> #include <cstdint> #include <cstring> #include <iostream> int main() { double f1 = std::nan("1"); std::uint64_t f1n; std::memcpy(&f1n, &f1, sizeof f1); std::cout << "nan(\"1\") = " << f1 << " (" << std::hex << f1n << ")\n"; double f2 = std::nan("2"); std::uint64_t f2n; std::memcpy(&f2n, &f2, sizeof f2); std::cout << "nan(\"2\") = " << f2 << " (" << std::hex << f2n << ")\n"; }
Возможный вывод:
nan("1") = nan (7ff0000000000001)
nan("2") = nan (7ff0000000000002)
Смотрите также
|
(C++11)
|
проверяет, является ли данное число NaN
(функция) |
|
(C++11)
|
вычисляется в тихий NaN типа
float
(макроконстанта) |
|
[static]
|
идентифицирует типы с плавающей запятой, которые могут представлять специальное значение "тихий не-число" (NaN)
(публичная статическая константа-член
std::numeric_limits<T>
)
|
|
[static]
|
идентифицирует типы с плавающей запятой, которые могут представлять специальное значение "сигнальный не-число" (NaN)
(публичная статическая константа-член
std::numeric_limits<T>
)
|
|
[static]
|
возвращает значение тихого NaN для данного типа с плавающей запятой
(публичная статическая функция-член
std::numeric_limits<T>
)
|
|
[static]
|
возвращает значение сигнального NaN для данного типа с плавающей запятой
(публичная статическая функция-член
std::numeric_limits<T>
)
|
|
Документация C
для
nanf
,
nan
,
nanl
|
|