curs_inchstr(3x) curs_inchstr(3x)
inchstr, inchnstr, winchstr, winchnstr, mvinchstr,
mvinchnstr, mvwinchstr, mvwinchnstr
- curses ウインドウから文字列 (と属性) を取得する
#include <curses.h>
int inchstr(chtype *chstr);
int inchnstr(chtype *chstr, int n);
int winchstr(WINDOW *win, chtype *chstr);
int winchnstr(WINDOW *win, chtype *chstr, int n);
int mvinchstr(int y, int x, chtype *chstr);
int mvinchnstr(int y, int x, chtype *chstr, int n);
int mvwinchstr(WINDOW *win, int y, int x, chtype *chstr);
int mvwinchnstr(WINDOW *win, int y, int x, chtype *chstr,
int n);
これらのルーチンは、指定のウインドウのカーソルの現在位置から
ウインドウの右端までのひとまとまりの chtype 値を NULL で
終端した配列として与えます。
最後の引数に n を取る 4 つの関数は、先頭から (終端の
(chtype)0 を除いて) 最大 n 文字長の部分文字列を与えます。
<curses.h> で定義されている定数と & (論理積 = AND) 演算子を
使うと、chstr 配列内の任意の位置から文字または属性値を単独で
取り出すことができます。 [curs_inch(3x) 参照]
すべてのルーチンは失敗のとき整数 ERR を、正常終了のとき
ERR 以外の整数値 (終端の 0 を除く、取得した文字の数) を
返します。
エラーの条件は何も定義されていません。
引数 chstr がヌルの場合は、何もデータを与えず、戻り値は
ゼロです。
mv で始まる関数は、最初に wmove を使用してカーソルを移動し、
位置がウインドウの外だった場合、またはウインドウ・ポインタが
ヌルの場合にエラーを返します。
winchnstr 以外のルーチンはすべてマクロであるかも
しれないことに注意してください。
SVr4 は出力文字列がゼロで終端されるかどうかを
明記していません。
SVr4 は長さ制限引数が終端の 0 を含む値かどうかを
明記していません。
SVr4 は戻り値の意味も明記していません。
これらの関数は XSI Curses standard, Issue 4 に
記載されています。
同書は終端の 0 について、SVr4 の説明より詳しくはありません。
同書は、成功すると関数は OK を返すと指定しています。
curses(3x), curs_inch(3x).
ワイド文字用ライブラリ (ncursesw) の対応する関数群は
curs_in_wchstr(3x) で説明しています。
curs_inchstr(3x)