|
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | PORTABILITY | HISTORY | SEE ALSO | COLOPHON |
|
|
|
curs_inch(3X) Library calls curs_inch(3X)
inch, winch, mvinch, mvwinch - get a curses character from a
window
#include <curses.h>
chtype inch(void);
chtype winch(WINDOW * win);
chtype mvinch(int y, int x);
chtype mvwinch(WINDOW * win, int y, int x);
winch returns the curses character, including its attributes and
color pair identifier, at the cursor position in the window win.
Subsection “Video Attributes” of attron(3X) explains how to
extract these data from a chtype. ncurses(3X) describes the
variants of this function.
These functions return OK on success and ERR on failure.
In ncurses, they return ERR if win is NULL.
Functions prefixed with “mv” first perform cursor movement and
fail if the position (y, x) is outside the window boundaries.
inch, mvinch, and mvwinch may be implemented as macros.
These functions do not fail if the window contains cells of curses
complex characters; that is, if they contain characters with codes
wider than eight bits (or greater than 255 as an unsigned decimal
integer). They instead extract only the low-order eight bits of
the character code from the cell.
X/Open Curses Issue 4 describes these functions. It specifies no
error conditions for them.
The original curses in 4BSD (1980) defined winch as a macro
accessing the WINDOW structure member representing character cell
data, at that time a char, containing only a 7-bit ASCII character
code and a “standout“ attribute bit, the only one the library
supported.
SVr2 curses (1984) extended this approach, widening the character
code to eight bits and permitting several attributes to be
combined with it by storing them together in a chtype, an alias of
unsigned short. Because a macro was used, its value was not type-
checked as a function return value could have been. Goodheart
documented SVr3 (1987) winch as returning an int. SVr3.1's (1987)
chtype became an alias of unsigned long, using 16 bits for the
character code and widening the type in practical terms to 32
bits, as 64-bit Unix systems were not yet in wide use, and fixed-
width integral types would not be standard until ISO C99. SVr3.2
(1988) added a 6-bit color pair identifier alongside the
attributes.
curs_in_wch(3X) describes comparable functions of the ncurses
library in its wide-character configuration (ncursesw).
curses(3X), curs_instr(3X)
This page is part of the ncurses (new curses) project.
Information about the project can be found at
⟨https://invisible-island.net/ncurses/ncurses.html⟩. If you have a
bug report for this manual page, send it to bug-ncurses@gnu.org.
This page was obtained from the tarball ncurses-6.6.tar.gz fetched
from ⟨https://ftp.gnu.org/gnu/ncurses/⟩ on 2026-01-16. If you
discover any rendering problems in this HTML version of the page,
or you believe there is a better or more up-to-date source for the
page, or you have corrections or improvements to the information
in this COLOPHON (which is not part of the original manual page),
send a mail to man-pages@man7.org
ncurses @NCURSES_MAJOR@.@NCU... 2025-02-15 curs_inch(3X)