Provided by: manpages-es-dev_4.18.1-1_all bug

NOMBRE

       strfmon, strfmon_l - convierte valores monetarios a una cadena

BIBLIOTECA

       Biblioteca Estándar C (libc, -lc)

SINOPSIS

       #include <monetary.h>

       ssize_t strfmon(char s[restrict .max], size_t max,
                       const char *restrict formato, ...);
       ssize_t strfmon_l(char s[restrict .max], size_t max, locale_t locale,
                       const char *restrict formato, ...);

DESCRIPCIÓN

       La  función strfmon() formatea las cantidades monetarias definidas según la especificación
       de la localización en curso y del formato formato.Guarda el  resultado  en  el  vector  de
       caracteres s de tamaño max.

       The strfmon_l()  function performs the same task, but uses the locale specified by locale.
       The behavior of  strfmon_l()   is  undefined  if  locale  is  the  special  locale  object
       LC_GLOBAL_LOCALE (see duplocale(3))  or is not a valid locale object handle.

       Ordinary  characters  in format are copied to s without conversion.  Conversion specifiers
       are introduced by a '%' character.  Immediately following it there can be zero or more  of
       the following flags:

       =f     El  carácter de un sólo byte f se usa como carácter de relleno numérico (el relleno
              se produce a la izquierda, vea más abajo).  Cuando no se especifica, se utiliza  el
              carácter espacio.

       ^      No  usar  ningún  carácter  de  agrupamiento  que  pueda  estar  definido  para  la
              localización actual. Por defecto, el agrupamiento está habilitado.

       ( o +  La opción (  indica  que  las  cantidades  negativas  deben  ser  encerradas  entre
              paréntesis.  La  opción  + indica que los signos deben ser manejados en el modo por
              defecto, esto es, las cantidades son precedidas por la indicación de  signo  de  la
              localización, p.e., nada para positivo, "-" para negativo.

       !      Omitir el símbolo monetario.

       -      Justificar a la izquierda todos los campos. Por defecto se justifican a la derecha.

       A  continuación,  puede  haber  una  anchura  de  campo:  una  cadena de dígitos decimales
       especificando una anchura mínima de campo. El valor por defecto es 0.   Un  resultado  más
       pequeño  que  esta  anchura  es  rellenado  con  espacios  (a la izquierda, a menos que se
       especifique la opción de justificado a la izquierda).

       Seguidamente, pueda haber una precisión izquierda de la forma "#" seguido por  una  cadena
       de  dígitos  decimales. Si el número de dígitos a la izquierda del carácter decimal es más
       pequeño que esto, la representación se rellena a la izquierda con el carácter  de  relleno
       numérico. Los caracteres de agrupamiento no se tienen en cuenta en este ancho de campo.

       Tras  esto,  puede  haber  una precisión derecha de la forma "." seguido por una cadena de
       dígitos decimales. La cantidad a formatear se redondea al número especificado  de  dígitos
       antes  de  formatear.   El  valor por omisión se especifica en los elementos frac_digits y
       int_frac_digits de la localización actual.  Si la precisión derecha es 0,  no  se  muestra
       ningún carácter decimal (el carácter decimal lo determina aquí LC_MONETARY y puede diferir
       del especificado por LC_NUMERIC.)

       Finalmente, la especificación de conversión debe terminar con un carácter  de  conversión.
       Los tres carácteres de conversión son

       %      (En  este  caso  la  especificación  completa  debe ser exactamente "%%".)  Pone un
              carácter '%' en la cadena resultante.

       i      Un argumento de tipo double se convierte usando el formato monetario  internacional
              de la localización.

       n      Un argumento de tipo double se convierte usando el formato monetario nacional de la
              localización.

VALOR DEVUELTO

       The strfmon()  function returns the number of  characters  placed  in  the  array  s,  not
       including  the  terminating null byte, provided the string, including the terminating null
       byte, fits.  Otherwise, it sets errno to E2BIG, returns -1, and the contents of the  array
       is undefined.

ATRIBUTOS

       Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

       ┌──────────────────────┬────────────────────┬─────────────────────────────────────────────┐
       │InterfazAtributoValor                                       │
       ├──────────────────────┼────────────────────┼─────────────────────────────────────────────┤
       │strfmon()             │ Seguridad del hilo │ Configuración regional de multi-hilo seguro │
       ├──────────────────────┼────────────────────┼─────────────────────────────────────────────┤
       │strfmon_l()           │ Seguridad del hilo │ Multi-hilo seguro                           │
       └──────────────────────┴────────────────────┴─────────────────────────────────────────────┘

ESTÁNDARES

       POSIX.1-2001, POSIX.1-2008.

EJEMPLOS

       La llamada

           strfmon(buf, sizeof(buf), "[%^=*#6n] [%=*#6i]",
                   1234.567, 1234.567);

       produce la salida

           [€ **1234,57] [EUR **1 234,57]

       in the nl_NL locale.  The de_DE, de_CH, en_AU, and en_GB locales yield

           [ **1234,57 €] [ **1.234,57 EUR]
           [ Fr. **1234.57] [ CHF **1'234.57]
           [ $**1234.57] [ AUD**1,234.57]
           [ £**1234.57] [ GBP**1,234.57]

VÉASE TAMBIÉN

       duplocale(3), setlocale(3), sprintf(3), locale(7)

TRADUCCIÓN

       La  traducción  al  español  de  esta  página del manual fue creada por Miguel Pérez Ibars
       <mpi79470@alu.um.es> y Marcos Fouces <marcos@debian.org>

       Esta traducción es documentación libre; lea  la  GNU  General  Public  License  Version  3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  o posterior con respecto a las condiciones de
       copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta  página  del  manual,  envíe  un  correo
       electrónico a ⟨debian-l10n-spanish@lists.debian.org⟩.