addwstr, waddwstr, mvaddwstr, mvwaddwstr, addnwstr, waddnwstr, mvaddnwstr, mvwaddnwstr - add a wide-
Contents
Description
waddwstr writes the characters of the (wide-null-terminated) wide-character string wstr to the window
win, as if by constructing a cchar_t for each wchar_t in wstr, then calling wadd_wch(3NCURSES) with the
resulting cchar_t. curses processes spacing and non-spacing characters in wstr one at a time. waddnwstr
is similar, but writes at most n wide characters. If n is -1, waddnwstr writes the entire wide string.
ncurses(3NCURSES) describes the variants of these functions.
History
X/Open Curses Issue 4 (1995) initially specified these functions. The System V Interface Definition
Version 4 of the same year specified functions named waddwstr and waddnwstr (and the usual variants).
These were later additions to SVr4.x, not appearing in the first SVr4 (1989).
Name
addwstr, waddwstr, mvaddwstr, mvwaddwstr, addnwstr, waddnwstr, mvaddnwstr, mvwaddnwstr - add a wide-
character string to a curses window and advance the cursor
Notes
All of these functions except waddnwstr may be implemented as macros.
Portability
X/Open Curses Issue 4 describes these functions.
SVr4 describes a successful return value only as “an integer value other than ERR”.
Return Value
These functions return OK on success and ERR on failure.
In ncurses, they return ERR if
• win is NULL,
• wstr is NULL, or
• an internal wadd_wch(3NCURSES) call returns ERR.
Functions prefixed with “mv” first perform cursor movement and fail if the position (y, x) is outside the
window boundaries.
See Also
addstr(3NCURSES) describes comparable functions of the ncurses library in its non-wide-character configuration. ncurses(3NCURSES), add_wch(3NCURSES), add_wchstr(3NCURSES) ncurses 6.5 2025-02-01 addwstr(3NCURSES)
Synopsis
#include<curses.h>intaddwstr(constwchar_t*wstr);intwaddwstr(WINDOW*win,constwchar_t*wstr);intmvaddwstr(inty,intx,constwchar_t*wstr);intmvwaddwstr(WINDOW*win,inty,intx,constwchar_t*wstr);intaddnwstr(constwchar_t*wstr,intn);intwaddnwstr(WINDOW*win,constwchar_t*wstr,intn);intmvaddnwstr(inty,intx,constwchar_t*wstr,intn);intmvwaddnwstr(WINDOW*win,inty,intx,constwchar_t*wstr,intn);
