curs_addwstr.3x - Man Page

add a string of wide characters to a curses window and advance cursor


#include <curses.h>

int addwstr(const wchar_t *wstr);
int addnwstr(const wchar_t *wstr, int n);
int waddwstr(WINDOW *win, const wchar_t *wstr);
int waddnwstr(WINDOW *win, const wchar_t *wstr, int n);

int mvaddwstr(int y, int x, const wchar_t *wstr);
int mvaddnwstr(int y, int x, const wchar_t *wstr, int n);
int mvwaddwstr(WINDOW *win, int y, int x, const wchar_t *wstr);
int mvwaddnwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n);


These functions write the characters of the (null-terminated) wchar_t character string wstr on the given window. It is similar to constructing a cchar_t for each wchar_t in the string, then calling wadd_wch for the resulting cchar_t.

The mv functions perform cursor movement once, before writing any characters. Thereafter, the cursor is advanced as a side-effect of writing to the window.

The four functions with n as the last argument write at most n wchar_t characters, or until a terminating null is reached. If n is -1, then the entire string will be added.

Return Value

All functions return the integer ERR upon failure and OK on success.

X/Open does not define any error conditions. This implementation returns an error

Functions with a “mv” prefix first perform a cursor movement using wmove, and return an error if the position is outside the window, or if the window pointer is null.


All of these functions except waddnwstr may be macros.


These functions are described in the XSI Curses standard, Issue 4.

See Also

curses(3X), curs_add_wch(3X)

Referenced By

The man pages addnwstr.3x(3), addwstr.3x(3), mvaddnwstr.3x(3), mvaddwstr.3x(3), mvwaddnwstr.3x(3), mvwaddwstr.3x(3), waddnwstr.3x(3) and waddwstr.3x(3) are aliases of curs_addwstr.3x(3).