EN JA
curs_insstr(3X)
curs_insstr(3X) curs_insstr(3X)

名称

insstr, insnstr, winsstr, winsnstr, mvinsstr, mvinsnstr, mvwinsstr, mvwinsnstr - curses ウィンドウでカーソルの前に文字列を挿入する

書式

#include <curses.h>
 
int insstr(const char *str);
 
int insnstr(const char *str, int n);
 
int winsstr(WINDOW *win, const char *str);
 
int winsnstr(WINDOW *win, const char *str, int n);
 
int mvinsstr(int y, int x, const char *str);
 
int mvinsnstr(int y, int x, const char *str, int n);
 
int mvwinsstr(WINDOW *win, int y, int x, const char *str);
 
int mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n);
 

解説

これらのルーチンは、カーソルの下の文字の前に (行に入るだけの文字数) 文字列を挿入します。カーソルの右のすべての文字は、行の右端の文字が失われるかもしれませんが、右にシフトされます。 (指定されるなら、 y, x に移動した後も) カーソル位置は、変更されません。最後の引数として n がある関数は、多くても n 文字の先導する部分文字列を挿入します。 n<=0 であるなら、すべての文字列は、挿入されます。

特殊文字は、 addch のように扱われます。

戻り値

すべてのルーチンは、失敗すると整数 ERR を返し、そうでなければ前のルーチンで説明されている注記を除いて、成功して終了すれば、OK (SVr4 は、" ERR 以外の整数値"とだけ明記されています) を返します。

X/Open は、エラー条件を何も定義していません。この実装で、ウィンドウのパラメータが NULL であるか、または str パラメータが NULL であるなら、エラーが返されます。

winsnstr を除いて、すべてのルーチンは、マクロであるかもしれないことに注意してください。

移植性

これらの関数は、引数に const 修飾子を追加して、 XSI Curses standard, Issue 4 に記述されています。

Single Unix Specification、Version 2 は、 insnstrwinsnstr が、折り返しを実行すると記載しています。これは、このグループの関数と矛盾するので、たぶんエラーです。また、curses の実装は、この矛盾を文書化していません。

関連項目

curses(3X), curs_util(3X), curs_clear(3X), curs_inch(3X).