Provided by: ncurses-doc_6.5+20250216-2_all bug

NAME

       getyx, getparyx, getbegyx, getmaxyx - get curses cursor and window coordinates

SYNOPSIS

       #include <curses.h>

       void getyx(WINDOW *win, int y, int x);
       void getbegyx(WINDOW *win, int y, int x);
       void getmaxyx(WINDOW *win, int y, int x);

       void getparyx(WINDOW *win, int y, int x);

DESCRIPTION

       These  macros  obtain  the  cursor  position and bounds information of a curses window win.  getyx stores
       win's cursor position in the variables y and x.  getmaxyx stores win's  maximum  valid  line  and  column
       numbers  in  y  and  x, respectively.  getbegyx similarly stores the position of win's origin relative to
       that of the screen (for stdscr, these coordinates are always 0).

       If win is a subwindow (see subwin(3NCURSES)), the getparyx macro places the  coordinates  of  its  origin
       relative to its parent window into y and x, and -1 into both if it is not.

RETURN VALUE

       No  return  values  are  defined  for  macros.   Do  not  use  them  as the right-hand side of assignment
       statements.

NOTES

       All of these interfaces are implemented as macros.  An “&” operator is not necessary before the variables
       y and x.

PORTABILITY

       These macros are described in X/Open Curses Issue 4.

       ncurses also provides functions getbegy,  getbegx,  getcury,  getcurx,  getmaxy,  getmaxx,  getpary,  and
       getparx for compatibility with System V curses that were not standardized; see legacy(3NCURSES).

       Although  X/Open  Curses  does  not  address the issue, many implementations expose members of the WINDOW
       structure containing values corresponding to these macros.  Do  not  rely  on  their  availability;  some
       implementations make WINDOW opaque (that is, they do not allow direct access to its members).

       Besides  the  problem  of opaque structures, the data stored in like-named members may not have values of
       the same meaning  across  different  implementations.   For  example,  the  values  of  WINDOW._maxx  and
       WINDOW._maxy  in  ncurses  have long differed by one from some other implementations.  The getmaxyx macro
       hides this difference.

HISTORY

       4BSD (1980) introduced getyx.

       SVr3 (1987) added getbegyx and getmaxyx.  SVr3.1 later that year supplied getparyx.

SEE ALSO

       ncurses(3NCURSES), legacy(3NCURSES), opaque(3NCURSES)

ncurses 6.5                                        2025-02-01                                    getyx(3NCURSES)