#include <curses.h>
int addch(chtype ch);
int waddch(WINDOW *win, chtype ch);
int mvaddch(int y, int x, chtype ch);
int mvwaddch(WINDOW *win, int y, int x, chtype ch);
int echochar(chtype ch);
int wechochar(WINDOW *win, chtype ch);
Unsafe
If ch is a tab, newline, or backspace, the cursor is moved appropriately within the window. A newline also does a clrtoeol() before moving. Tabs are considered to be at every eighth column. If ch is another control character, it is drawn in the ^X notation. Calling winch() after adding a control character does not return the control character, but instead returns the representation of the control character. See curs_inch(3X) .
Video attributes can be combined with a character by OR-ing them into the parameter. This results in these attributes also being set. (The intent here is that text, including attributes, can be copied from one place to another using inch() and addch().) (see standout(), predefined video attribute constants, on the curs_attr(3X) page).
The echochar() and wechochar() routines are functionally equivalent to a call to addch() followed by a call to refresh(), or a call to waddch followed by a call to wrefresh(). The knowledge that only a single character is being output is taken into consideration and, for non-control characters, a considerable performance gain might be seen by using these routines instead of their equivalents.
Name Default Glyph Description ACS_ULCORNER + upper left-hand corner ACS_LLCORNER + lower left-hand corner ACS_URCORNER + upper right-hand corner ACS_LRCORNER + lower right-hand corner ACS_RTEE + right tee (-|) ACS_LTEE + left tee (z|-) ACS_BTEE + bottom tee (o’_|’) ACS_TTEE + top tee (o’rn|’) ACS_HLINE - horizontal line ACS_VLINE | vertical line ACS_PLUS + plus ACS_S1 - scan line 1 ACS_S9 _ scan line 9 ACS_DIAMOND + diamond ACS_CKBOARD : checker board (stipple) ACS_DEGREE ’ degree symbol ACS_PLMINUS # plus/minus ACS_BULLET o bullet ACS_LARROW < arrow pointing left ACS_RARROW > arrow pointing right ACS_DARROW v arrow pointing down ACS_UARROW d^u arrow pointing up ACS_BOARD # board of squares ACS_LANTERN # lantern symbol ACS_BLOCK # solid square block
The header <curses.h> automatically includes the headers <stdio.h> and <unctrl.h>.
Note that addch(), mvaddch(), mvwaddch(), and echochar() may be macros.