.\" 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 WCSWIDTH 3 2014-01-22 "GNU" "Linux Programmer's Manual" .SH NAME wcswidth \- determine columns needed for a fixed-size wide-character string .SH SYNOPSIS .nf .BR "#define _XOPEN_SOURCE" " /* See feature_test_macros(7) */" .B #include .sp .BI "int wcswidth(const wchar_t *" s ", size_t " n ); .fi .SH DESCRIPTION The .BR wcswidth () function returns the number of columns needed to represent the wide-character string pointed to by .IR s , but at most .I n wide characters. If a nonprintable wide character occurs among these characters, \-1 is returned. .SH RETURN VALUE The .BR wcswidth () function returns the number of column positions for the wide-character string .IR s , truncated to at most length .IR n . .SH ATTRIBUTES .SS Multithreading (see pthreads(7)) The .BR wcswidth () 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. .SH NOTES The behavior of .BR wcswidth () depends on the .B LC_CTYPE category of the current locale. .SH SEE ALSO .BR iswprint (3), .BR wcwidth (3) .SH COLOPHON This page is part of release 3.79 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/.