]> git.saurik.com Git - apple/libc.git/blobdiff - stdlib/NetBSD/strfmon.3
Libc-1044.40.1.tar.gz
[apple/libc.git] / stdlib / NetBSD / strfmon.3
index 7d7fe40cb470254698f8781560e92fae2697a298..6b6976fec71185f176fefbc0cfdfb80531fe4acf 100644 (file)
 .Dt STRFMON 3
 .Os
 .Sh NAME
-.Nm strfmon
+.Nm strfmon ,
+.Nm strfmon_l
 .Nd convert monetary value to string
-.Sh LIBRARY
-.Lb libc
+.\" .Sh LIBRARY
+.\" .Lb libc
 .Sh SYNOPSIS
 .In monetary.h
 .Ft ssize_t
-.Fn strfmon "char * restrict s" "size_t maxsize" "const char * restrict format" "..."
+.Fo strfmon
+.Fa "char *restrict s"
+.Fa "size_t maxsize"
+.Fa "const char *restrict format"
+.Fa "..."
+.Fc
+.In monetary.h
+.In xlocale.h
+.Ft ssize_t
+.Fo strfmon_l
+.Fa "char *restrict s"
+.Fa "size_t maxsize"
+.Fa "locale_t loc"
+.Fa "const char *restrict format"
+.Fa "..."
+.Fc
 .Sh DESCRIPTION
 The
 .Fn strfmon
 function places characters into the array pointed to by
-.Fa s
+.Fa s ,
 as controlled by the string pointed to by
 .Fa format .
 No more than
 .Fa maxsize
 bytes are placed into the array.
 .Pp
+While the
+.Fn strfmon
+function uses the current locale, the
+.Fn strfmon_l
+function may be passed a locale directly. See
+.Xr xlocale 3
+for more information.
+.Pp
 The format string is composed of zero or more directives:
 ordinary characters (not
 .Cm % ) ,
@@ -116,9 +140,9 @@ character is written.
 .El
 .El
 .Sh RETURN VALUES
-If the total number of resulting bytes including the terminating
+If the total number of resulting bytes, including the terminating
 .Dv NULL
-byte is not more than
+byte, is not more than
 .Fa maxsize ,
 .Fn strfmon
 returns the number of bytes placed into the array pointed to by
@@ -143,8 +167,23 @@ The format string is invalid.
 .It Bq Er ENOMEM
 Not enough memory for temporary buffers.
 .El
+.Sh EXAMPLE
+.Bd -literal -offset indent -compact
+  #include <stdio.h>
+  #include <monetary.h>
+  #include <locale.h>
+
+  int main() {
+          char buf[200];
+          setlocale(LC_ALL, "en_US");
+          (void)strfmon (buf, sizeof(buf)-1, "%n" , 123456.78);
+          printf("%s\n", buf);
+  }
+.Ed
+.Pp
 .Sh SEE ALSO
-.Xr localeconv 3
+.Xr localeconv 3 ,
+.Xr xlocale 3
 .Sh STANDARDS
 The
 .Fn strfmon