strfmon(3) | Library Functions Manual | strfmon(3) |
strfmon, strfmon_l - convierte valores monetarios a una cadena
Biblioteca Estándar C (libc, -lc)
#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, ...);
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:
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
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.
Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
Interfaz | Atributo | Valor |
strfmon() | Seguridad del hilo | Configuración regional de multi-hilo seguro |
strfmon_l() | Seguridad del hilo | Multi-hilo seguro |
POSIX.1-2001, POSIX.1-2008.
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]
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 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.
5 Febrero 2023 | Páginas de manual de Linux 6.03 |