std:: signbit
|
Определено в заголовке
<cmath>
|
||
| (1) | ||
|
bool
signbit
(
float
num
)
;
bool
signbit
(
double
num
)
;
|
(начиная с C++11)
(до C++23) |
|
|
constexpr
bool
signbit
(
/*floating-point-type*/
num
)
;
|
(начиная с C++23) | |
|
SIMD перегрузка
(начиная с C++26)
|
||
|
Определено в заголовке
<simd>
|
||
|
template
<
/*math-floating-point*/
V
>
constexpr
typename
/*deduced-simd-t*/
<
V
>
::
mask_type
|
(S) | (начиная с C++26) |
|
Определено в заголовке
<cmath>
|
||
|
template
<
class
Integer
>
bool signbit ( Integer num ) ; |
(A) |
(начиная с C++11)
(constexpr начиная с C++23) |
|
S)
Перегрузка SIMD выполняет поэлементное применение
std::signbit
к
v_num
.
|
(начиная с C++26) |
Содержание |
Параметры
| num | - | значение с плавающей точкой или целочисленное значение |
| v_num | - | объект с параллельной обработкой данных специализации std::basic_simd , тип элементов которого является типом с плавающей точкой |
Возвращаемое значение
[
0
,
v_num.
size
(
)
)
.
Примечания
Эта функция обнаруживает знаковый бит нулей, бесконечностей и NaN. Наряду с
std::copysign
,
std::signbit
является одним из двух переносимых способов проверки знака NaN.
Дополнительные перегрузки не обязаны быть предоставлены в точности как (A) . Они лишь должны быть достаточными для обеспечения того, чтобы для их аргумента num целочисленного типа, std :: signbit ( num ) имел тот же эффект, что и std :: signbit ( static_cast < double > ( num ) ) .
Пример
#include <cmath> #include <iostream> int main() { std::cout << std::boolalpha << "signbit(+0.0) = " << std::signbit(+0.0) << '\n' << "signbit(-0.0) = " << std::signbit(-0.0) << '\n' << "signbit(+nan) = " << std::signbit(+NAN) << '\n' << "signbit(-nan) = " << std::signbit(-NAN) << '\n' << "signbit(+inf) = " << std::signbit(+INFINITY) << '\n' << "signbit(-inf) = " << std::signbit(-INFINITY) << '\n'; }
Вывод:
signbit(+0.0) = false signbit(-0.0) = true signbit(+nan) = false signbit(-nan) = true signbit(+inf) = false signbit(-inf) = true
Смотрите также
|
(C++11)
(C++11)
|
абсолютное значение числа с плавающей точкой (
|x|
)
(функция) |
|
(C++11)
(C++11)
(C++11)
|
копирует знак числа с плавающей точкой
(функция) |
|
Документация C
для
signbit
|
|