# curs_in_wchstr 3x 2025-02-01 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

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

           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  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.

## 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-02-01                curs_in_wchstr(3x)