[C con Clase] Signos de Puntuación

Steven Davidson srd4121 en njit.edu
Mar Dic 14 04:23:37 CET 2010


Hola Antonio,

2010/12/13 Antonio Gómez <jagse en intercomgi.com>

>  Hola a todos:
>
>
>
> Hace poco que empecé con C ANSI  en un sistema Unix SCO.
>
> Cuando utilizo printf para imprimir un número real el separador de
> decimales
>
> es un punto y quisiera cambiarlo a una coma. Por más que leo no sé como
>
> solucionar esto. Agradecería cualquier ayuda.
>

Esto se basa en la localidad del programa. Por defecto, se usa la localidad
de C que asigna ciertos caracteres y comportamientos que gobiernan los
formatos y decisiones a la hora de visualizar información.

Para solucionar tu problema, carga la localidad actual del entorno. Esto lo
puedes hacer invocando 'setlocale()' y pasando una cadena nula como
localidad. Esto es,

setlocale( LC_ALL, "" );

printf( "%lf", 100.2345 );

Si tienes configurado tu sistema para que sea español, entonces debería
aparecer lo siguiente en la pantalla:
100,234500

Para más información acerca de las funciones de <locale.h>, consulta la
referencia en nuestra página yendo a:
http://c.conclase.net/librerias/index.php?ansilib=locale#inicio


Espero que esto te ayude.

Steven
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20101214/922fa9c2/attachment.html>


Más información sobre la lista de distribución Cconclase