前へ | 次へ | 目次 | 索引 |
カーソルを座標 (y,x) に移動し,指定されたウィンドウ上の文字を削除します。 mvdelch関数は stdscrウィンドウに作用します。
#include <curses.h>int mvdelch (int y, int x);
int mvwdelch (WINDOW *win, int y, int x);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。
同じ行のそれ以降の文字は左にシフトし,最後の文字は空白になります。
OK 成功を示します。 ERR 文字の削除がスクリーンに不正なスクロールを引き起こすことを示します。詳細については, scrollok 関数を参照してください。
カーソルを座標 (y,x) に移動し,ターミナル・スクリーンから文字を取得し,指定されたウィンドウにエコーします。 mvgetch関数は stdscrウィンドウに作用します。
#include <curses.h>int mvgetch (int y, int x);
int mvwgetch (WINDOW *win, int y, int x);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。
mvgetchおよび mvwgetch関数は,文字をフェッチする前に,指定されたウィンドウをリフレッシュします。
x 返される文字。 ERR 関数がスクリーンに不正なスクロールを引き起こすことを示します。詳細については, scrollok 関数を参照してください。
カーソルを座標 (y,x) に移動し,ターミナル・スクリーンから文字列を取得し,これを変数 str ( 文字列を保持できるだけの大きさでなくてはなりません ) に格納し,指定されたウィンドウにエコーします。 mvgetstr関数は stdscrウィンドウに作用します。
#include <curses.h>int mvgetstr (int y, int x, char *str);
int mvwgetstr (WINDOW *win, int y, int x, char *str);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。str
表示される文字列。
mvgetstrおよび mvwgetstr関数は,文字列から改行文字 (\n) を除去します。
OK 成功を示します。 ERR 関数がスクリーンに不正なスクロールを引き起こすことを示します。
カーソルを座標 (y,x) に移動し,ウィンドウに変更を加えずに,指定されたウィンドウ上の文字を返します。 mvinch関数は stdscrウィンドウに作用します。
#include <curses.h>int mvinch (int y, int x);
int mvwinch (WINDOW *win, int y, int x);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。
x 返される文字。 ERR 入力エラーを示します。
カーソルを座標 (y,x) に移動し,文字 ch を指定されたウィンドウに挿入します。 mvinsch関数は stdscrウィンドウに作用します。
#include <curses.h>int mvinsch (int y, int x, char ch);
int mvwinsch (WINDOW *win, int y, int x, char ch);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。ch
ウィンドウの座標に挿入する文字。
文字の挿入後,行の上のすべての文字は右にシフトし,行の最後の文字は削除されます。
OK 成功を示します。 ERR 関数がスクリーンに不正なスクロールを引き起こすことを示します。詳細については, scrollok 関数を参照してください。
カーソルを座標 (y,x) に移動し,指定された文字列を指定されたウィンドウに挿入します。 mvinsstr関数は stdscrウィンドウに作用します。
#include <curses.h>int mvinsstr (int y, int x, char *str);
int mvwinsstr (WINDOW *win, int y, int x, char *str);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。str
表示する文字列。
文字列の後のすべての文字は右にシフトし,最後の文字は消えます。 mvinsstrおよび mvwinsstr関数は HP C for OpenVMS システムに固有のもので,移植性はありません。
OK 成功を示します。 ERR 関数がスクリーンに不正なスクロールを引き起こすことを示します。詳細については, scrollok 関数を参照してください。
ウィンドウの開始位置を,指定された (y,x) 座標に移動します。
#include <curses.h>mvwin (WINDOW *win, int y, int x);
win
ウィンドウへのポインタ。y
ウィンドウ座標。x
ウィンドウ座標。
サブウィンドウを移動するとき, mvwin関数は,下位ウィンドウ上の新しい位置にサブウィンドウの内容を再表示しません。移動後にサブウィンドウへの書き込みを行った場合,関数は下位ウィンドウにも書き込みを行います。
OK 成功を示します。 ERR ウィンドウの移動により,ウィンドウの一部または全体がターミナル・スクリーンから外れることを示します。ターミナル・スクリーンは変更されません。
高精度のスリープです (リアルタイム)。指定された時間だけ,プロセスの実行を中断します。
#include <time.h>int nanosleep (const struct timespec *rqtp, struct timespec *rmtp);
rqtp
呼び出し元プロセスを中断する時間を指定する timespec構造体へのポインタ。rmtp
以前に要求されていた時間の残り時間 (時間が完全に経過した場合は,ゼロ) を受け取る timespecデータ構造体へのポインタ。
nanosleep関数は,次のいずれかの条件を満たすまで,プロセスの実行を中断します。
- rqtp 引数で指定された時間が経過した。
- 呼び出し元プロセスにシグナルが渡され,その動作がシグナル・キャッチ関数の起動,またはプロセスの終了である。
引数の値がスリープの精度の整数倍に切り上げられたり,システムにより他の動作がスケジューリングされることがあるため,中断時間は,要求された時間よりも長くなることがあります。シグナルによって割り込まれた場合を除き,中断時間は, rqtp 引数で指定された時間より短くなることはありません (システム・クロック CLOCK_REALTIME で計測されます)。
nanosleep関数を使用しても,シグナルの動作やブロック条件には影響しません。
要求された時間が経過した場合,呼び出しが成功し, nanosleep関数はゼロを返します。
失敗すると, nanosleep関数は - 1 を返し,失敗を示す値を errnoに設定します。この関数は,シグナルに割り込まれるか,指定された rqtp 引数が0 より小さいか 10 億以上の場合に失敗します。
rmtp 引数が NULL でない場合,この引数が指す timespec構造体は,時間間隔の残り時間 (要求された時間から実際にスリープした時間を引いたもの) を含むようにアップデートされます。
rmtp 引数が NULL の場合,残り時間は返されません。
clock_getres, clock_gettime, clock_settime,および sleepも参照してください。
0 成功を示します。要求された時間が経過しました。 - 1 失敗を示します。関数呼び出しが成功しなかったか,シグナルに割り込まれました。次の値のいずれかが, errno に設定されます。
- EINTR -- nanosleep 関数が,シグナルに割り込まれました。
- EINVAL -- rqtp 引数が, 0 より小さい,または 10 億以上のナノ秒値を指定していました。
ターミナル・スクリーン上の座標 (begin_y, begin_x) から,numlines 行, numcols カラムの新しいウィンドウを作成します。
#include <curses.h>WINDOW *newwin (int numlines, int numcols, int begin_y, int begin_x);
numlines
これが 0 の場合, newwin関数はサイズを LINES (begin_y) に設定します。 LINES x COLS のサイズの新しいウィンドウを作成するには,次のようにします。
newwin (0, 0, 0, 0)
numcols
これが 0 の場合, newwin関数はサイズを COLS (begin_x) に設定します。 LINES x COLS のサイズの新しいウィンドウを作成するには,次のようにします。
newwin (0, 0, 0, 0)
begin_y
ウィンドウ座標。begin_x
ウィンドウ座標。
x 割り当てられたウィンドウのアドレス。 ERR エラーを示します。
x から見て y の向きにある,機械による表現が可能な次の数値を返します。
#include <math.h>double nextafter (double x, double y);
float nextafterf (float x, float y);
long double nextafterl (long double x, long double y);
x
実数。y
実数。
nextafter関数は, x から見て y の向きにある,機械による表現が可能な次の浮動小数点数を返します。 y が x よりも小さい場合, nextafterは,機械による表現が可能な x よりも小さい最大の浮動小数点数を返します。
x x から見て y の向きにある,機械による表現が可能な次の浮動小数点値。 HUGE_VAL オーバフロー。 errno は ERANGE に設定されます。 NaN x または y が NaN です。 errno は EDOM に設定されます。
プロセスの現在の優先度を基準とし,引数で指定されたレベルだけ優先度を増減します。この関数は非リエントラントです。
#include <unistd.h>int nice (int increment);
increment
正の引数は,優先度を下げます。負の引数は,優先度を上げます。 nice(0)を発行すると,基本の優先度に戻されます。結果として得られる優先度は,1 よりも小さくてはならず,プロセスの基本優先度よりも高くてはなりません。この条件が満たされなければ, nice関数は何の処理も行いません。
プロセスが vfork関数を呼び出した場合,結果として作成される子プロセスは親の優先度を継承します。DECC$ALLOW_UNPRIVILEGED_NICE 機能論理名が有効になっている場合, nice関数は従来の動作を行い,呼び出し元プロセスの権限をチェックしません (つまり,任意のユーザが, nice値を小さくして,プロセスの優先度を高くすることができます)。また,呼び出し元が MAX_PRIORITY を超える優先度を設定した場合, nice値には,基本の優先度が設定されます。
DECC$ALLOW_UNPRIVILEGED_NICE が無効になっている場合, nice関数は X/Open 標準に従い,呼び出し元プロセスの権限をチェックします (ALTPRI 特権を持つユーザだけが nice値を小さくし,プロセスの優先度を高くすることができます)。また,呼び出し元が MAX_PRIORITY を超える優先度を設定した場合, nice値には MAX_PRIORITY が設定されます。
vforkも参照してください。
0 成功を示します。 - 1 失敗を示します。
引数に最も近い整数値を返します。
#include <math.h>double nint (double x);
float nintf (float x,);
long double nintl (long double x);
x
実数。
nint関数は,x に最も近い整数値を返します。中間の値は,x よりも絶対値が大きい整数値に丸められます。この関数は Fortran の汎用組み込み関数 nintに対応します。
n x に最も近い整数値。 NaN x は NaN です。 errno は EDOM に設定されます。
nlおよび nonl関数は, UNIX ソフトウェアとの互換性のためにのみ用意されており, OpenVMS 環境では機能を持ちません。
#include <curses.h>void nl (void);
void nonl (void);
プログラムのカレント・ロケールから取得された情報を含んでいる文字列へのポインタを返します。
#include <langinfo.h>char *nl_langinfo (nl_item item);
item
必要な情報を指定する定数の名前。これらの定数は <langinfo.h>に定義されています。以下の定数が有効です。
定数 カテゴリ 説明 D_T_FMT LC_TIME 日付と時刻をフォーマットするための文字列 D_FMT LC_TIME 日付をフォーマットするための文字列 T_FMT LC_TIME 時刻をフォーマットするための文字列 T_FMT_AMPM LC_TIME AM/PM 文字列を含む時刻フォーマット AM_STR LC_TIME AM を 12 時間制で表現する文字列 PM_STR LC_TIME PM を 12 時間制で表現する文字列 DAY_1 LC_TIME 週の最初の曜日の名前 ... DAY_7 LC_TIME 週の 7 番目の曜日の名前 ABDAY_1 LC_TIME 週の最初の曜日の短縮名 ... ABDAY_7 LC_TIME 週の 7 番目の曜日の短縮名 MON_1 LC_TIME 年の最初の月の名前 ... MON_12 LC_TIME 年の 12 番目の月の名前 ABMON_1 LC_TIME 年の最初の月の短縮名 ... ABMON_12 LC_TIME 年の 12 番目の月の短縮名 ERA LC_TIME Epoch の記述文字列 ERA_D_FMT LC_TIME Epoch の日付フォーマット文字列 ERA_T_FMT LC_TIME Epoch の時刻フォーマット ERA_D_T_FMT LC_TIME Epoch の日付と時刻のフォーマット ALT_DIGITS LC_TIME 数字の代替シンボル RADIXCHAR LC_NUMERIC 基数文字 THOUSEP LC_NUMERIC 非金額値で桁のグループを区切るために使われる文字 YESEXP LC_MESSAGES yes/no の質問に対する肯定的な応答の表現 NOEXP LC_MESSAGES yes/no の質問に対する否定的な応答の表現 CRNCYSTR LC_MONETARY 通貨シンボル。次のいずれかが前に置かれる:
- シンボルを値の前に置く場合にはマイナス ( - )
- シンボルを値の後に置く場合にはプラス (+)
- シンボルが基数文字を置き換える場合にはピリオド (.)
CODESET LC_CTYPE コードセット名
現在のロケールに言語情報が定義されていない場合,関数は C ロケールから情報を返します。プログラムは,この関数から返された文字列を変更するべきではありません。この文字列は,後の nl_langinfoの呼び出しによって上書きされることがあります。
前へ 次へ 目次 索引