curs_add_wchstr(3X)              Library calls             curs_add_wchstr(3X)

NAME

     add_wchstr, wadd_wchstr, mvadd_wchstr, mvwadd_wchstr, add_wchnstr,
     wadd_wchnstr, mvadd_wchnstr, mvwadd_wchnstr - add a curses complex
     character string to a window

SYNOPSIS

     #include <curses.h>

     int add_wchstr(const cchar_t * wchstr);
     int wadd_wchstr(WINDOW *  win, const cchar_t * wchstr);
     int mvadd_wchstr(int y, int x, const cchar_t * wchstr);
     int mvwadd_wchstr(WINDOW * win, int y, int x, const cchar_t * wchstr);

     int add_wchnstr(const cchar_t * wchstr, int n);
     int wadd_wchnstr(WINDOW *  win, const cchar_t * wchstr, int n);
     int mvadd_wchnstr(int y, int x, const cchar_t * wchstr, int n);
     int mvwadd_wchnstr(WINDOW * win, int y, int x,
           const cchar_t * wchstr, int n);

DESCRIPTION

     wadd_wchstr copies the string of complex characters wchstr to the window
     win.  A null complex character terminates the string.  If a complex
     character does not completely fit at the end of the line, curses fills
     its remaining cells with the window's background character; see
     bkgrnd(3X).  wadd_wchnstr does the same, but copies at most n characters,
     or as many as possible if n is -1.  ncurses(3X) describes the variants of
     these functions.

     Because these functions do not call wadd_wch(3X) internally, they are
     faster than waddwstr(3X) and waddnwstr(3X).  On the other hand, they

     o   do not treat the backspace, carriage return, or line feed characters
         specially;

     o   do not represent unprintable characters with wunctrl(3X);

     o   do not update the cursor position to follow the last character
         written; and

     o   truncate the string at the window's right margin, rather than
         wrapping it to the next line and potentially scrolling.

RETURN VALUE

     These functions return OK on success and ERR on failure.

     In ncurses, these functions fail if

     o   the curses screen has not been initialized,

     o   wchstr is a null pointer, or

     o   (for functions taking a WINDOW pointer argument) win is a null
         pointer.

     Functions prefixed with "mv" first perform cursor movement and fail if
     the position (y, x) is outside the window boundaries.

NOTES

     All of these functions except wadd_wchnstr may be implemented as macros.

PORTABILITY

     X/Open Curses Issue 4 describes these functions.  It specifies no error
     conditions for them.

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 waddwchstr and waddwchnstr (and the usual variants).
     These were later additions to SVr4.x, not appearing in the first SVr4
     (1989).  They differed from X/Open's later wadd_wchstr and wadd_wchnstr
     in that they each took an argument of type wchar_t instead of cchar_t.

SEE ALSO

     curs_addchstr(3X) describes comparable functions of the ncurses library
     in its non-wide-character configuration.

     curses(3X), curs_addwstr(3X), curs_add_wch(3X)

ncurses 6.6                       2025-10-20               curs_add_wchstr(3X)