.\" Copyright (c) Bruno Haible .\" .\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" %%%LICENSE_END .\" .\" References consulted: .\" GNU glibc-2 source code and manual .\" Dinkumware C library reference http://www.dinkumware.com/ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" .TH WCWIDTH 3 2014-01-22 "GNU" "Linux Programmer's Manual" .SH NAME wcwidth \- determine columns needed for a wide character .SH SYNOPSIS .nf .BR "#define _XOPEN_SOURCE" " /* See feature_test_macros(7) */" .B #include .sp .BI "int wcwidth(wchar_t " c ); .fi .SH DESCRIPTION The .BR wcwidth () function returns the number of columns needed to represent the wide character .IR c . If .I c is a printable wide character, the value is at least 0. If .I c is null wide character (L\(aq\\0\(aq), the value is 0. Otherwise, \-1 is returned. .SH RETURN VALUE The .BR wcwidth () function returns the number of column positions for .IR c . .SH ATTRIBUTES .SS Multithreading (see pthreads(7)) The .BR wcwidth () function is thread-safe with exceptions. It can be safely used in multithreaded applications, as long as .BR setlocale (3) is not called to change the locale during its execution. .SH CONFORMING TO POSIX.1-2001. Note that glibc before 2.2.5 used the prototype .br .nf .BI "int wcwidth(wint_t " c ); .fi .SH NOTES The behavior of .BR wcwidth () depends on the .B LC_CTYPE category of the current locale. .SH SEE ALSO .BR iswprint (3), .BR wcswidth (3) .SH COLOPHON This page is part of release 3.74 of the Linux .I man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%http://www.kernel.org/doc/man\-pages/.