<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2023,2024 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inchstr.3x,v 1.21 2020/10/18 00:24:36 tom Exp @
+ * @Id: curs_inchstr.3x,v 1.45 2024/04/20 21:20:07 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_inchstr 3X</TITLE>
+<TITLE>curs_inchstr 3x 2024-04-20 ncurses 6.5 Library calls</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+
</HEAD>
<BODY>
-<H1 class="no-header">curs_inchstr 3X</H1>
+<H1 class="no-header">curs_inchstr 3x 2024-04-20 ncurses 6.5 Library calls</H1>
<PRE>
-<B><A HREF="curs_inchstr.3X.html">curs_inchstr(3X)</A></B> <B><A HREF="curs_inchstr.3X.html">curs_inchstr(3X)</A></B>
+<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <B>inchstr</B>, <B>inchnstr</B>, <B>winchstr</B>, <B>winchnstr</B>, <B>mvinchstr</B>, <B>mvinchnstr</B>,
- <B>mvwinchstr</B>, <B>mvwinchnstr</B> - get a string of characters (and attributes)
- from a <B>curses</B> window
+ <STRONG>inchstr</STRONG>, <STRONG>inchnstr</STRONG>, <STRONG>winchstr</STRONG>, <STRONG>winchnstr</STRONG>, <STRONG>mvinchstr</STRONG>, <STRONG>mvinchnstr</STRONG>,
+ <STRONG>mvwinchstr</STRONG>, <STRONG>mvwinchnstr</STRONG> - get a <EM>curses</EM> character string from a window
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
- <B>#include</B> <B><curses.h></B>
+ <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
- <B>int</B> <B>inchstr(chtype</B> <B>*</B><I>chstr</I><B>);</B>
- <B>int</B> <B>inchnstr(chtype</B> <B>*</B><I>chstr</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
- <B>int</B> <B>winchstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>);</B>
- <B>int</B> <B>winchnstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
+ <STRONG>int</STRONG> <STRONG>inchstr(chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>inchnstr(chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
- <B>int</B> <B>mvinchstr(int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>);</B>
- <B>int</B> <B>mvinchnstr(int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
- <B>int</B> <B>mvwinchstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>);</B>
- <B>int</B> <B>mvwinchnstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>chtype</B> <B>*</B><I>chstr</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
+ <STRONG>int</STRONG> <STRONG>mvinchstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvinchnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- These routines return a NULL-terminated array of <B>chtype</B> quantities,
- starting at the current cursor position in the named window and ending
- at the right margin of the window. The four functions with <I>n</I> as the
- last argument, return a leading substring at most <I>n</I> characters long
- (exclusive of the trailing (chtype)0). Constants defined in <B><curses.h></B>
- can be used with the <B>&</B> (logical AND) operator to extract the character
- or the attribute alone from any position in the <I>chstr</I> [see
- <B><A HREF="curs_inch.3X.html">curs_inch(3X)</A></B>].
+ These routines return a NULL-terminated array of <STRONG>chtype</STRONG> quantities,
+ starting at the current cursor position in the named window and ending
+ at the right margin of the window.
+
+ The four functions with <EM>n</EM> as the last argument, return a leading
+ substring at most <EM>n</EM> characters long (exclusive of the trailing
+ (chtype)0). Transfer stops at the end of the current line, or when <EM>n</EM>
+ characters have been stored at the location referenced by <EM>chstr</EM>.
+
+ Constants defined in <STRONG><curses.h></STRONG> can be used with the <STRONG>&</STRONG> (logical AND)
+ operator to extract the character or the attribute alone from any
+ position in the <EM>chstr</EM> [see <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>].
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return the integer <B>ERR</B> upon failure and an integer value
- other than <B>ERR</B> upon successful completion (the number of characters re-
- trieved, exclusive of the trailing 0).
+ All routines return the integer <STRONG>ERR</STRONG> upon failure and an integer value
+ other than <STRONG>ERR</STRONG> upon successful completion (the number of characters
+ retrieved, exclusive of the trailing 0).
- X/Open Curses defines no error conditions. In this implementation:
+ X/Open Curses defines no error conditions. This implementation returns
+ an error
- <B>o</B> If the <I>win</I> parameter is null, an error is returned,
+ <STRONG>o</STRONG> if the <EM>win</EM> parameter is null or
- <B>o</B> If the <I>chstr</I> parameter is null, an error is returned,
+ <STRONG>o</STRONG> if the <EM>chstr</EM> parameter is null.
- Functions with a "mv" prefix first perform a cursor movement using
- <B>wmove</B>, and return an error if the position is outside the window, or if
- the window pointer is null.
+ Functions prefixed with "mv" first perform cursor movement and fail if
+ the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- Note that all routines except <B>winchnstr</B> may be macros. SVr4 does not
- document whether the result string is zero-terminated; it does not doc-
- ument whether a length limit argument includes any trailing 0; and it
- does not document the meaning of the return value.
+ All routines except <STRONG>winchnstr</STRONG> may be macros.
+
+ SVr4 does not document whether the result string is zero-terminated; it
+ does not document whether a length limit argument includes any trailing
+ 0; and it does not document the meaning of the return value.
+
+ Reading a line that overflows the array pointed to by <EM>chstr</EM> with
+ <STRONG>inchstr</STRONG>, <STRONG>mvinchstr</STRONG>, <STRONG>mvwinchstr</STRONG> or <STRONG>winchstr</STRONG> causes undefined results.
+ Therefore, the use of <STRONG>inchnstr</STRONG>, <STRONG>mvinchnstr</STRONG>, <STRONG>mvwinchnstr</STRONG>, or <STRONG>winchnstr</STRONG>
+ is recommended.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These functions are described in the XSI Curses standard, Issue 4. It
- is no more specific than the SVr4 documentation on the trailing 0. It
- does specify that the successful return of the functions is <B>OK</B>.
+ These functions are described in X/Open Curses, Issue 4. It is no more
+ specific than the SVr4 documentation on the trailing 0. It does
+ specify that the successful return of the functions is <STRONG>OK</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <B><A HREF="curses.3X.html">curses(3X)</A></B>, <B><A HREF="curs_inch.3X.html">curs_inch(3X)</A></B>.
-
- Comparable functions in the wide-character (ncursesw) library are de-
- scribed in <B><A HREF="curs_in_wchstr.3X.html">curs_in_wchstr(3X)</A></B>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>, <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
- <B><A HREF="curs_inchstr.3X.html">curs_inchstr(3X)</A></B>
+ncurses 6.5 2024-04-20 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
</PRE>
<div class="nav">
<ul>