_Imaginary_I
|
Definido en el encabezado
<complex.h>
|
||
|
#define _Imaginary_I /* no especificado */
|
(desde C99) | |
La macro
_Imaginary_I
se expande a un valor de tipo
const
float
_Imaginary
con el valor de la unidad imaginaria.
Al igual que con cualquier soporte de números puramente imaginarios en C, esta macro solo está definida si los números imaginarios son compatibles.
|
Un compilador que define
__STDC_IEC_559_COMPLEX__
no está obligado a admitir números imaginarios. POSIX recomienda verificar si la macro
|
(desde C99)
(hasta C11) |
|
Los números imaginarios se admiten si __STDC_IEC_559_COMPLEX__ está definido. |
(desde C11) |
Contenidos |
Notas
Esta macro permite la forma precisa de ensamblar un número complejo a partir de sus componentes real e imaginario, por ejemplo con ( double complex ) ( ( double ) x + _Imaginary_I * ( double ) y ) . Este patrón fue estandarizado en C11 como la macro CMPLX . Nótese que si se utiliza _Complex_I en su lugar, esta expresión puede convertir cero negativo a cero positivo en la posición imaginaria.
Ejemplo
Salida:
z1 = 0.0+Infi z2 = NaN+Infi
Referencias
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.3.1/5 _Imaginary_I (p: 188)
-
- G.6/1 _Imaginary_I (p: 537)
- Estándar C99 (ISO/IEC 9899:1999):
-
- 7.3.1/3 _Imaginary_I (p: 170)
-
- G.6/1 _Imaginary_I (p: 472)
Véase también
|
(C99)
|
la constante de unidad compleja i
(macro constante) |
|
(C99)
|
la constante de unidad compleja o imaginaria i
(macro constante) |