FPUTWS(3)

NAME
fputws, fputws_unlocked, _fputws_r, _fputws_unlocked_r - write a wide character string in a file or stream

SYNOPSIS

#include <wchar.h>

int fputws(const wchar_t *__restrict ws, FILE *__restrict fp);

#define _GNU_SOURCE

#include <wchar.h>

int fputws_unlocked(const wchar_t *__restrict ws, FILE *__restrict fp);

#include <wchar.h>

int _fputws_r(struct _reent *ptr, const wchar_t *ws, FILE *fp);

#include <wchar.h>

int _fputws_unlocked_r(struct _reent *ptr, const wchar_t *ws, FILE *fp);

DESCRIPTION

fputws writes the wide character string at ws (but without the trailing null) to the file or stream identified by fp.

fputws_unlocked is a non-thread-safe version of fputws. fputws_unlocked may only safely be used within a scope protected by flockfile() (or ftrylockfile()) and funlockfile(). This function may safely be used in a multi-threaded program if and only if they are called while the invoking thread owns the (FILE *) object, as is the case after a successful call to the flockfile() or ftrylockfile() functions. If threads are disabled, then fputws_unlocked is equivalent to fputws.

_fputws_r and _fputws_unlocked_r are simply reentrant versions of the above that take an additional reentrant struct pointer argument: ptr.

RETURNS

If successful, the result is a non-negative integer; otherwise, the result is -1 to indicate an error.

PORTABILITY

fputws is required by C99 and POSIX.1-2001.

fputws_unlocked is a GNU extension.