# curs_in_wchstr 3x 2025-08-16 ncurses 6.5 Library calls

    curs_in_wchstr(3x)               Library calls              curs_in_wchstr(3x)

## NAME

           in_wchstr,    in_wchnstr,    win_wchstr,    win_wchnstr,   mvin_wchstr,
           mvin_wchnstr,  mvwin_wchstr,  mvwin_wchnstr  -  get  a  curses  complex
           character string from a window

## SYNOPSIS

           #include <curses.h>

           int in_wchstr(cchar_t *wchstr);
           int win_wchstr(WINDOW *win, cchar_t *wchstr);
           int mvin_wchstr(int y, int x, cchar_t *wchstr);
           int mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wchstr);

           int in_wchnstr(cchar_t *wchstr, int n);
           int win_wchnstr(WINDOW *win, cchar_t *wchstr, int n);
           int mvin_wchnstr(int y, int x, cchar_t *wchstr, int n);
           int mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wchstr, int n);

## DESCRIPTION

           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

           These functions return OK on success and ERR on failure.

           ncurses returns ERR

           o   if the win parameter is null or

           o   if the wchstr parameter is null.

           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 win_wchnstr may be implemented as macros.

           Reading  a  line  that overflows the array pointed to by wchstr and its
           variants  causes  undefined  results.   Instead,  use   the   n-infixed
           functions  with  a  positive  n argument no larger than the size of the
           buffer backing wchstr.

## 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  a
           function  named  winwchstr  (and the usual variants).  This was a later
           addition to SVr4.x,  not  appearing  in  the  first  SVr4  (1989).   It
           differed  from X/Open's later win_wchstr in that it took an argument of
           type pointer-to-chtype instead of pointer-tocchar_t.

## SEE ALSO

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

           curses(3x), curs_inwstr(3x), curs_in_wch(3x)

    ncurses 6.5                       2025-08-16                curs_in_wchstr(3x)