Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
curs_printw(3X)			 Library calls		       curs_printw(3X)

NAME
       printw,	wprintw, mvprintw, mvwprintw, vwprintw,	vw_printw - write for-
       matted output to	a curses window

SYNOPSIS
       #include	<curses.h>

       int printw(const	char *fmt, ...);
       int wprintw(WINDOW *win,	const char *fmt, ...);
       int mvprintw(int	y, int x, const	char *fmt, ...);
       int mvwprintw(WINDOW *win, int y, int x,	const char *fmt, ...);

       int vw_printw(WINDOW *win, const	char *fmt, va_list varglist);

       /* obsolete */
       int vwprintw(WINDOW *win, const char *fmt, va_list varglist);

DESCRIPTION
       printw, wprintw,	mvprintw, and mvwprintw	are  analogous	to  printf(3).
       In effect, the string that would	be output by printf(3) is instead out-
       put  as	though waddstr(3X) were	used with win (or stdscr) as its first
       argument.

       vwprintw	and vw_printw are  analogous  to  vprintf(3),  and  perform  a
       wprintw	using  a  variable  argument  list.   The  third argument is a
       va_list,	a pointer to a list of arguments, as defined in	stdarg.h.

RETURN VALUE
       These functions return ERR upon failure and OK upon success.

       In ncurses, failure occurs if the library cannot	allocate enough	memory
       for the buffer into which the output is formatted,  or  if  the	window
       pointer win is null.

       Functions  prefixed with	"mv" first perform cursor movement and fail if
       the position (y,	x) is outside the window boundaries.

NOTES
       No wide character counterpart  functions	 are  defined  by  the	"wide"
       ncurses configuration nor by any	standard.  To format and write a wide-
       character  string  to  a	 curses	window,	consider using swprintf(3) and
       waddwstr(3X) or similar.

PORTABILITY
       X/Open Curses, Issue 4 describes	these functions.  It specifies no  er-
       ror conditions for them.

       ncurses	defines	 vw_printw  and	vwprintw identically to	support	legacy
       applications.  However, the latter is obsolete.

          X/Open Curses, Issue	4 Version 2 (1996), marked vwprintw as requir-
	   ing varargs.h and "TO BE WITHDRAWN",	and specified vw_printw	 using
	   the stdarg.h	interface.

          X/Open  Curses,  Issue  5,  Draft 2 (December 2007) marked vwprintw
	   (along with vwscanw and the termcap interface) as withdrawn.	 After
	   incorporating review	comments, this became X/Open Curses,  Issue  7
	   (2009).

          ncurses provides vwprintw, but marks	it as deprecated.

HISTORY
       While printw was	implemented in 4BSD (November 1980), it	was unused un-
       til 4.2BSD (August 1983), which employed	it for games.  That early ver-
       sion  of	 curses	 preceded the ANSI C standard of 1989.	It did not use
       varargs.h, though that had been available since	Seventh	 Edition  Unix
       (1979).	In 1991	(a couple of years after SVr4 was generally available,
       and  after  the C standard was published), other	developers updated the
       library,	using stdarg.h internally in 4.4BSD curses.   Even  with  this
       improvement,  BSD  curses did not use function prototypes (nor even de-
       clare functions)	in curses.h until 1992.

       SVr2 (1984) documented printw and wprintw tersely as "printf on stdscr"
       and "printf on win", respectively.

       SVr3 (1987) added mvprintw and mvwprintw, with a	three-line summary as-
       serting that they were analogous	 to  printf(3),	 explaining  that  the
       string  that  printf(3) would write to the standard output stream would
       instead be output using waddstr to the given window.  SVr3 also	imple-
       mented  vwprintw,  describing its third parameter as a va_list, defined
       in varargs.h, and referred the reader to	the manual pages  for  varargs
       and vprintf for detailed	descriptions.

       SVr4  (1989)  introduced	 no new	variations of printw, but provided for
       using either varargs.h or stdarg.h to define the	va_list	type.

       X/Open Curses, Issue 4 (1995), defined vw_printw	to  replace  vwprintw,
       stating that its	va_list	type is	defined	in stdarg.h.

SEE ALSO
       curses(3X), curs_addstr(3X), curs_scanw(3X), printf(3), vprintf(3)

ncurses	6.5			  2024-04-20		       curs_printw(3X)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | PORTABILITY | HISTORY | SEE ALSO

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=curs_printw&sektion=3&manpath=FreeBSD+14.2-RELEASE+and+Ports>

home | help