como asignar el valor "No es un Numero"

18/12/2004 - 01:57 por Pablo Iñigo Blasco | Informe spam
como puedo asignar a un double o a un int el valor NAN ??, ¿hay alguna
libreria donde este definida como constante? en math.h no lo he encontrado

Preguntas similare

Leer las respuestas

#1 Hernán
18/12/2004 - 05:36 | Informe spam
"Pablo Iñigo Blasco" escribía:

como puedo asignar a un double o a un int el valor NAN ??, ¿hay alguna
libreria donde este definida como constante? en math.h no lo he encontrado




¿un int?

El valor para un doble es definido por el standard.

=#include <stdio.h>

typedef union
{
double d;
struct
{
unsigned int f0:32; /* fracción */
unsigned int f1:20; /* 52 bits en total */
unsigned int e: 11; /* exponente */
unsigned int s: 1; /* signo */
};
}DOBLE;

/**/
int main(void)
{
DOBLE d;

/* escribimos un NaN */
d.f0 = 1; /* distinto de 0 */
d.e = 2047; /* igual a 2047 */
d.s = 1;

printf("%g", d.d);

return 0;
}
=
O sea que hay 2 a la 53 nans...

Hernán
Respuesta Responder a este mensaje
#2 Hernán
18/12/2004 - 05:40 | Informe spam
El valor para un doble es definido por el standard.


^^^^^ double

Hernán
Respuesta Responder a este mensaje
#3 Rodrigo Corral [MVP]
18/12/2004 - 21:10 | Informe spam
Hechale un vistazo a la clase numeric_limits de STL. Tiene variaos metodo
para ver cual es la representación de NaN para el compilador en el que estas
trabajando en concreto.


Un saludo
Rodrigo Corral González [MVP]

FAQ de microsoft.public.es.vc++
http://rcorral.mvps.org
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida