---
name: "curs_inch"
section: "3x"
platform: "macos"
package: "ncurses"
version: "79"
release: "macOS 26.5"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/curs_inch/3x"
---

# curs\_inch(3x)

get a character and attributes from a curses window

## NAME

**inch**, **winch**, **mvinch**, **mvwinch** - get a character and attributes from a **curses** window

## SYNOPSIS

**#include \<curses.h\>**

**chtype inch(void);**\
 **chtype winch(WINDOW \*win);**\
 **chtype mvinch(int y, int x);**\
 **chtype mvwinch(WINDOW \*win, int y, int x);**\

## DESCRIPTION

These routines return the character, of type **chtype**, at the current position in the named window.  If any attributes are set for that position, their values are OR'ed into the value returned.  Constants defined in **\<curses.h\>** can be used with the **&** (logical AND) operator to extract the character or attributes alone.

### Attributes

The following bit-masks may be AND-ed with characters returned by **winch**.

| | |
| --- | --- |
| **A\_CHARTEXT** | Bit-mask to extract character |
| **A\_ATTRIBUTES** | Bit-mask to extract attributes |
| **A\_COLOR** | Bit-mask to extract color-pair field information |

## RETURN VALUE

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.

## NOTES

Note that all of these routines may be macros.

## PORTABILITY

These functions are described in the XSI Curses standard, Issue 4.

## SEE ALSO

**curses**(3X).

Comparable functions in the wide-character (ncursesw) library are described in **curs\_in\_wch**(3X).
