Your company here — click to reach over 10,000 unique daily visitors

curs_in_wchstr.3x - Man Page

get a curses complex character string from a window


#include <curses.h>

int in_wchstr(cchar_t *wchstr);
int in_wchnstr(cchar_t *wchstr, int n);
int win_wchstr(WINDOW *win, cchar_t *wchstr);
int win_wchnstr(WINDOW *win, cchar_t *wchstr, int n);

int mvin_wchstr(int y, int x, cchar_t *wchstr);
int mvin_wchnstr(int y, int x, cchar_t *wchstr, int n);
int mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wchstr);
int mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wchstr, int n);


These functions return an array of complex characters in wchstr, starting at the current cursor position in the named window. Attributes (rendition) are stored with the characters.

The four functions with n as the last argument return a leading substring at most n characters long (exclusive of the trailing zeroed cchar_t. Transfer stops at the end of the current line, or when n characters have been stored at the location referenced by wchstr.

Constants defined in <curses.h> can be used with the & (logical AND) operator to extract the character or the attribute alone from any position in the wchstr [see getcchar(3X)].

Return Value

Upon successful completion, these functions return OK. Otherwise, they return ERR.

X/Open Curses defines no 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 routines except win_wchnstr may be macros.

Reading a line that overflows the array pointed to by wchstr with in_wchstr, mvin_wchstr, mvwin_wchstr or win_wchstr causes undefined results. Therefore, the use of in_wchnstr, mvin_wchnstr, mvwin_wchnstr, or win_wchnstr is recommended.


The XSI Curses defines no error conditions. This implementation checks for null pointers, returning ERR in that case.

See Also

curses(3X), curs_inchstr(3X), curs_instr(3X), curs_inwstr(3X), curs_in_wch(3X)

Referenced By

The man pages in_wchnstr.3x(3), in_wchstr.3x(3), mvin_wchnstr.3x(3), mvin_wchstr.3x(3), mvwin_wchnstr.3x(3), mvwin_wchstr.3x(3), win_wchnstr.3x(3) and win_wchstr.3x(3) are aliases of curs_in_wchstr.3x(3).

2023-11-18 ncurses 6.4 Library calls