Namespaces
Variants

signbit

From cppreference.net
< c ‎ | numeric ‎ | math
Common mathematical functions
Functions
Basic operations
(C99)
(C99)
(C99)
(C99) (C99) (C99) (C23)
Maximum/minimum operations
Exponential functions
Power functions
Trigonometric and hyperbolic functions
Nearest integer floating-point
(C99) (C99) (C99)
(C23) (C23) (C23) (C23)
Floating-point manipulation
Narrowing operations
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
Quantum and quantum exponent
Decimal re-encoding functions
Total order and payload functions
Classification
(C99)
(C99)
signbit
(C99)
(C23)
Error and gamma functions
(C99)
(C99)
(C99)
(C99)
Types
Macro constants
Special floating-point values
Arguments and return values
Error handling
Fast operation indicators
Definido en el encabezado <math.h>
#define signbit( arg ) /* implementation defined */
(desde C99)

Determina si el número de punto flotante dado arg es negativo. La macro devuelve un valor integral.

Contenidos

Parámetros

arg - valor de punto flotante

Valor de retorno

Valor integral distinto de cero si arg es negativo, 0 en caso contrario.

Notas

Esta macro detecta el bit de signo de ceros, infinitos y NaNs. Junto con copysign , esta macro es una de las dos únicas formas portátiles de examinar el signo de un NaN.

Ejemplo

#include <math.h>
#include <stdio.h>
int main(void)
{
    printf("signbit(+0.0) = %d\n", signbit(+0.0));
    printf("signbit(-0.0) = %d\n", signbit(-0.0));
}

Salida posible:

signbit(+0.0) = 0
signbit(-0.0) = 128

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.12.3.6 La macro signbit (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.12.3.6 La macro signbit (p: TBD)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.12.3.6 La macro signbit (p: 237)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.12.3.6 La macro signbit (p: 218)

Véase también

(C99) (C99)
calcula el valor absoluto de un valor de punto flotante ( |x| )
(función)
produce un valor con la magnitud de un valor dado y el signo de otro valor dado
(función)