1*d889a70bSSascha Wildner.\" Copyright (c) 2012 Isabell Long <issyl0@FreeBSD.org> 2*d889a70bSSascha Wildner.\" All rights reserved. 3*d889a70bSSascha Wildner.\" 4*d889a70bSSascha Wildner.\" Redistribution and use in source and binary forms, with or without 5*d889a70bSSascha Wildner.\" modification, are permitted provided that the following conditions 6*d889a70bSSascha Wildner.\" are met: 7*d889a70bSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 8*d889a70bSSascha Wildner.\" notice, this list of conditions and the following disclaimer. 9*d889a70bSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 10*d889a70bSSascha Wildner.\" notice, this list of conditions and the following disclaimer in the 11*d889a70bSSascha Wildner.\" documentation and/or other materials provided with the distribution. 12*d889a70bSSascha Wildner.\" 13*d889a70bSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14*d889a70bSSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15*d889a70bSSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16*d889a70bSSascha Wildner.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17*d889a70bSSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18*d889a70bSSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19*d889a70bSSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20*d889a70bSSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21*d889a70bSSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22*d889a70bSSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23*d889a70bSSascha Wildner.\" SUCH DAMAGE. 24*d889a70bSSascha Wildner.\" 25*d889a70bSSascha Wildner.\" $FreeBSD: head/lib/libc/stdio/printf_l.3 235848 2012-05-23 17:13:30Z issyl0 $ 26*d889a70bSSascha Wildner.\" 27*d889a70bSSascha Wildner.Dd November 16, 2013 28*d889a70bSSascha Wildner.Dt PRINTF_L 3 29*d889a70bSSascha Wildner.Os 30*d889a70bSSascha Wildner.Sh NAME 31*d889a70bSSascha Wildner.Nm printf_l , 32*d889a70bSSascha Wildner.Nm asprintf_l , 33*d889a70bSSascha Wildner.Nm fprintf_l , 34*d889a70bSSascha Wildner.Nm snprintf_l , 35*d889a70bSSascha Wildner.Nm sprintf_l , 36*d889a70bSSascha Wildner.Nm vasprintf_l , 37*d889a70bSSascha Wildner.Nm vfprintf_l , 38*d889a70bSSascha Wildner.Nm vprintf_l , 39*d889a70bSSascha Wildner.Nm vsnprintf_l , 40*d889a70bSSascha Wildner.Nm vsprintf_l 41*d889a70bSSascha Wildner.Nd formatted output conversion 42*d889a70bSSascha Wildner.Sh LIBRARY 43*d889a70bSSascha Wildner.Lb libc 44*d889a70bSSascha Wildner.Sh SYNOPSIS 45*d889a70bSSascha Wildner.In stdio.h 46*d889a70bSSascha Wildner.In xlocale.h 47*d889a70bSSascha Wildner.Ft int 48*d889a70bSSascha Wildner.Fn printf_l "locale_t loc" "const char * restrict format" "..." 49*d889a70bSSascha Wildner.Ft int 50*d889a70bSSascha Wildner.Fn asprintf_l "char **ret" "locale_t loc" "const char * format" "..." 51*d889a70bSSascha Wildner.Ft int 52*d889a70bSSascha Wildner.Fn fprintf_l "FILE * restrict stream" "locale_t loc" "const char * restrict format" "..." 53*d889a70bSSascha Wildner.Ft int 54*d889a70bSSascha Wildner.Fn snprintf_l "char * restrict str" "size_t size" "locale_t loc" "const char * restrict format" "..." 55*d889a70bSSascha Wildner.Ft int 56*d889a70bSSascha Wildner.Fn sprintf_l "char * restrict str" "locale_t loc" "const char * restrict format" "..." 57*d889a70bSSascha Wildner.Ft int 58*d889a70bSSascha Wildner.Fn vasprintf_l "char **ret" "locale_t loc" "const char *format" "va_list ap" 59*d889a70bSSascha Wildner.Ft int 60*d889a70bSSascha Wildner.Fn vfprintf_l "FILE * restrict stream" "locale_t loc" "const char * restrict format" "va_list ap" 61*d889a70bSSascha Wildner.Ft int 62*d889a70bSSascha Wildner.Fn vprintf_l "locale_t loc" "const char * restrict format" "va_list ap" 63*d889a70bSSascha Wildner.Ft int 64*d889a70bSSascha Wildner.Fn vsnprintf_l "char * restrict str" "size_t size" "locale_t loc" "const char * restrict format" "va_list ap" 65*d889a70bSSascha Wildner.Ft int 66*d889a70bSSascha Wildner.Fn vsprintf_l "char * restrict str" "locale_t loc" "const char * restrict format" "va_list ap" 67*d889a70bSSascha Wildner.Sh DESCRIPTION 68*d889a70bSSascha WildnerThe above functions are used to convert formatted output in the locale 69*d889a70bSSascha Wildner.Fa loc . 70*d889a70bSSascha WildnerThey behave in the same way as the versions without the _l suffix, but use 71*d889a70bSSascha Wildnerthe specified locale rather than the global or per-thread locale. 72*d889a70bSSascha WildnerSee the specific manual pages for more information. 73*d889a70bSSascha Wildner.Sh SEE ALSO 74*d889a70bSSascha Wildner.Xr printf 3 , 75*d889a70bSSascha Wildner.Xr xlocale 3 76*d889a70bSSascha Wildner.Sh STANDARDS 77*d889a70bSSascha WildnerThese functions do not conform to any specific standard so they should be 78*d889a70bSSascha Wildnerconsidered as non-portable local extensions. 79*d889a70bSSascha Wildner.Sh HISTORY 80*d889a70bSSascha WildnerThese functions first appeared in Darwin and were first implemented in 81*d889a70bSSascha Wildner.Fx 9.1 . 82