OSDN Git Service

LDP: Update original to LDP v3.79
[linuxjm/LDP_man-pages.git] / original / man3 / wcswidth.3
1 .\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
2 .\"
3 .\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA)
4 .\" This is free documentation; you can redistribute it and/or
5 .\" modify it under the terms of the GNU General Public License as
6 .\" published by the Free Software Foundation; either version 2 of
7 .\" the License, or (at your option) any later version.
8 .\" %%%LICENSE_END
9 .\"
10 .\" References consulted:
11 .\"   GNU glibc-2 source code and manual
12 .\"   Dinkumware C library reference http://www.dinkumware.com/
13 .\"   OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html
14 .\"
15 .TH WCSWIDTH 3  2014-01-22 "GNU" "Linux Programmer's Manual"
16 .SH NAME
17 wcswidth \- determine columns needed for a fixed-size wide-character string
18 .SH SYNOPSIS
19 .nf
20 .BR "#define _XOPEN_SOURCE" "             /* See feature_test_macros(7) */"
21 .B #include <wchar.h>
22 .sp
23 .BI "int wcswidth(const wchar_t *" s ", size_t " n );
24 .fi
25 .SH DESCRIPTION
26 The
27 .BR wcswidth ()
28 function returns the
29 number of columns needed to represent
30 the wide-character string pointed to by
31 .IR s ,
32 but at most
33 .I n
34 wide
35 characters.
36 If a nonprintable wide character occurs among these characters,
37 \-1 is returned.
38 .SH RETURN VALUE
39 The
40 .BR wcswidth ()
41 function
42 returns the number of column positions for the
43 wide-character string
44 .IR s ,
45 truncated to at most length
46 .IR n .
47 .SH ATTRIBUTES
48 .SS Multithreading (see pthreads(7))
49 The
50 .BR wcswidth ()
51 function is thread-safe with exceptions.
52 It can be safely used in multithreaded applications, as long as
53 .BR setlocale (3)
54 is not called to change the locale during its execution.
55 .SH CONFORMING TO
56 POSIX.1-2001.
57 .SH NOTES
58 The behavior of
59 .BR wcswidth ()
60 depends on the
61 .B LC_CTYPE
62 category of the
63 current locale.
64 .SH SEE ALSO
65 .BR iswprint (3),
66 .BR wcwidth (3)
67 .SH COLOPHON
68 This page is part of release 3.79 of the Linux
69 .I man-pages
70 project.
71 A description of the project,
72 information about reporting bugs,
73 and the latest version of this page,
74 can be found at
75 \%http://www.kernel.org/doc/man\-pages/.