日本-日本語

製品  >  ソフトウェア  >  OpenVMS  >  マニュアル >  V8.3ライブラリ

OpenVMS マニュアル


HP OpenVMS
HP C ランタイム・ライブラリ・
リファレンス・マニュアル (下巻)


前へ 次へ 目次 索引





[w]clrtobot

ウィンドウの内容を現在のカーソルの位置からウィンドウの最下部まで消去します。 clrtobot関数は stdscrウィンドウに対して動作します。



形式

#include <curses.h>

int clrtobot();

int wclrtobot (WINDOW *win);




引数



win

ウィンドウを指すポインタ。



戻り値

OK 正常終了を示します。
ERR エラーを示します。




[w]clrtoeol

ウィンドウの内容を指定されたウィンドウの現在のカーソルの位置から行末まで消去します。 clrtoeol関数は stdscrウィンドウに対して動作します。



形式

#include <curses.h>

int clrtoeol();

int wclrtoeol (WINDOW *win);




引数



win

ウィンドウを指すポインタ。



戻り値

OK 正常終了を示します。
ERR エラーを示します。




confstr

文字列値によって定義されるシステム変数の現在の値を返します。



形式

#include <unistd.h>

size_t confstr (int name, char *buf, size_t len);




引数



name

システム変数の設定。name 引数に対して指定できる値は, <unistd.h>ヘッダ・ファイルに定義されている _CS_X 名です。

buf

confstr関数が name の値をコピーする先のバッファを指すポインタ。

len

name の値が格納されるバッファのサイズ。



説明

confstr関数を使用すると,アプリケーションは文字列値によって定義される特定のシステム・パラメータ,リミット,オプションの現在の設定を判断することができます。この関数は主に,アプリケーションで PATH環境変数のシステム・デフォルト値を判断するために使用されます。

次の条件が満たされる場合は, confstr関数は値を buf によって示される len バイトのバッファにコピーします。

  • len 引数が 0 でない。

  • name 引数にシステムで定義されている値が指定されている。

  • buf 引数が NULL ポインタでない。

返された文字列が末尾のヌルも含めて len バイトより長い場合は, confstr関数は文字列を len - 1 バイトに切り捨て,結果の末尾にヌルを追加します。アプリケーションは, confstr関数から返された値を, len 引数の値と比較することにより,文字列が切り捨てられたことを検出できます。

<limits.h>ヘッダ・ファイルには,システムで定義されているリミットが格納されています。 <unistd.h>ヘッダ・ファイルには,システム定義環境変数が格納されています。




name の文字列値を格納するのに必要なバッファのサイズを判断するには,次のように入力します。


 confstr(_CS_PATH, NULL, (size_t) 0) 

confstr関数は必要なバッファのサイズを返します。




戻り値

0 エラーを示します。指定された name の値に応じて,次のいずれかになります。

  • 不正な場合, errno は EINVAL に設定されます。

  • システム定義値がない場合, errno は設定されません。

n 値を格納するのに必要なバッファのサイズ。

  • name 引数の値がシステム定義値の場合は, confstr は値全体を格納するのに必要なバッファのサイズを返します。この戻り値が len の値より大きい場合は, buf の値として返された文字列は切り捨てられます。

  • len 引数の値が 0 に設定されている場合や, buf の値が NULL の場合は, confstr はシステム定義値全体を格納するのに必要なバッファのサイズを返します。文字列の値はコピーされません。




conj (Alpha, I64)

引数 (複素数) の共役値を返します。



形式

#include <complex.h>

double complex conj (double complex z);

float complex conjf (float complex z);

long double complex conjl (long double complex z);




引数



z

複素数値。



説明

conj関数は,複素数 z の共役値,つまり虚数部の符号を反転させた複素数を返します。



戻り値

x 共役複素数値。




copysign (Alpha, I64)

y と同じ符号で x を返します。



形式

#include <math.h>

double copysign (double x, double y);

float copysignf (float x, float y); (Alpha, I64)

long double copysignl (long double x, long double y); (Alpha, I64)




引数



x

実数値。

y

実数値。



説明

copysign関数は y と同じ符号を付けて x を返します。IEEE 754 では, copysign(x,NaN), copysignf(x,NaN), copysignl(x,NaN) は +x または - x を返すように要求されています。



戻り値

x y と同じ符号を付けた x の値。




cos

ラジアン単位の引数の余弦を返します。



形式

#include <math.h>

double cos (double x);

float cosf (float x); (Alpha, I64)

long double cosl (long double x); (Alpha, I64)

double cosd (double x); (Alpha, I64)

float cosdf (float x); (Alpha, I64)

long double cosdl (long double x); (Alpha, I64)




引数



x

実数値として表したラジアン値。



説明

cos関数は,引数の余弦 (ラジアン単位) を返します。

cosd関数は,引数の余弦 (度単位) を返します。

|x| = 無限大は不正な引数です。




戻り値

x 引数の余弦。
HUGE_VAL 引数が大きすぎることを示します。 errno は ERANGE に設定されます。




cosh

ラジアン単位の引数の双曲線余弦を返します。



形式

#include <math.h>

double cosh (double x);

float coshf (float x); (Alpha, I64)

long double coshl (long double x); (Alpha, I64)




引数



x

実数値で表したラジアン値。



説明

cosh関数は x の双曲線余弦を返します。これらの関数は (e**x + e**( - x))/2 として定義されます。



戻り値

x 引数の双曲線余弦。
HUGE_VAL 引数が大きすぎることを示します。 errno は ERANGE に設定されます。




cot

ラジアン単位の引数の余接を返します。



形式

#include <math.h>

double cot (double x);

float cotf (float x); (Alpha, I64)

long double cotl (long double x); (Alpha, I64)

double cotd (double x); (Alpha, I64)

float cotdf (float x); (Alpha, I64)

long double cotdl (long double x); (Alpha, I64)




引数



x

実数値で表したラジアン値。



説明

cot関数は,引数の余接 (ラジアン単位) を返します。

cotd関数は,引数の余接 (度単位) を返します。

x = 0 は不正な引数です。




戻り値

x 引数の余接。
HUGE_VAL 引数が 0 であることを示します。 errno は ERANGE に設定されます。




cpow (Alpha, I64)

複素数のべき乗関数値 x**y を返します。



形式

#include <complex.h>

double complex cpow (double complex x, double complex y);

float complex cpowf (float complex x, float complex y);

long double complex cpowl (long double complex x, long double complex y);




引数



x

複素数値。

y

複素数値。



説明

cpow関数は,第 1 パラメータに対して実軸上の負の領域に分岐線法を適用して,複素数のべき乗関数値 x**y を返します。



戻り値

x 複素数のべき乗関数値。




cproj (Alpha, I64)

引数に対するリーマン球面上の射影値を返します。



形式

#include <complex.h>

double complex cproj (double complex z);

float complex cprojf (float complex z);

long double complex cprojl (long double complex z);




引数



z

複素数値。



説明

cproj関数は, z に対するリーマン球面上の射影を計算して,返します。 z は,特別な複素数を除いてz 自身に射影されます。特別な複素数とは,無限大の複素数 (実数部/虚数部の一方が無限大でもう一方が NaN であるものも含む) のことで,この場合は,実軸上の正の無限大にすべて射影されます。 z の実数部または虚数部が無限大であると, cproj(z) は次の式と等しくなります。

INFINITY + I * copysign(0.0, cimag(z))




戻り値

x リーマン球面への射影値。




creal (Alpha, I64)

引数 (複素数) の実数部を返します。



形式

#include <complex.h>

double creal (double complex z);

float crealf (float complex z);

long double creall (long double complex z);




引数



z

複素数値。



説明

creal関数は,z の実数部を返します。



戻り値

x 実数部の値。




creat

新しいファイルを作成します。



形式

#include <fcntl.h>

int creat (const char *file_spec, mode_t mode); (ISO POSIX-1)

int creat (const char *file_spec, mode_t mode, ...); (HP C Extension)




引数



file_spec

有効なファイル指定を格納したヌル区切り文字列。

mode

ファイル保護モードを指定する符号なし値。コンパイラはモードおよび現在の保護モードの補数に対してビット単位の AND 操作を実行します。

モードを作成するには,ビット単位の OR 演算子 (|) を使用してモードの組み合わせを作成します。モードは次のとおりです。

0400 OWNER:READ
0200 OWNER:WRITE
0100 OWNER:EXECUTE
0040 GROUP:READ
0020 GROUP:WRITE
0010 GROUP:EXECUTE
0004 WORLD:READ
0002 WORLD:WRITE
0001 WORLD:EXECUTE

システムにはオーナと同じと特権が与えられます。 WRITE 特権がある場合は,DELETE 特権もあるものと解釈されます。

注意

UNIX システム呼び出し関数 umaskmkdircreatopenを使用して, OpenVMS RMS のデフォルト保護でファイルを作成するには, umaskを絶対に呼び出すことがないプログラムでファイル保護モード引数を 0777 に設定して, mkdircreatopenを呼び出します。これらのデフォルト保護には, ACL やファイルの前のバージョンなどをもとに正しく設定された保護が含まれます。

vfork/ execを呼び出すプログラムでは,新しいプロセス・イメージは, umaskが呼び出しプロセス・イメージから呼び出されたかどうかを継承します。 umaskの設定と, umask関数がこれまで呼び出されたかどうかは,どちらも継承される属性です。



...

次の形式の文字列で構成される省略可能な引数リスト。


"keyword = value",...,"keyword = value" 

"acc" または "err" の場合は,次の形式になります。


"keyword" 

ここで,keyword はファイル・アクセス・ブロック (FAB) またはレコード・アクセス・ブロック (RAB) の RMS フィールドです。 value はそのフィールドに代入できる有効な値です。一部のフィールドには,複数の値を指定できます。このような場合,値はコンマで区切ります。

RMS コールバック・キーワード "acc" と "err" だけは値を受け付けないキーワードです。これらのキーワードの後には,使用するコールバック・ルーチンを指すポインタを指定し,さらにコールバック・ルーチンの最初の引数として使用されるユーザ指定値を指すポインタを指定します。たとえば, acc_callbackというアクセス・コールバック・ルーチンを設定し,そのルーチンの最初の引数が openの呼び出しの整数変数 first_argを指すポインタの場合,次の文を使用できます。


open("file.dat", O_RDONLY, 0 ,"acc", acc_callback, &first_arg) 

コールバック・ルーチンに対する 2 番目の引数と 3 番目の引数はそれぞれ, FAB と RAB を指すポインタでなければならず,ルーチンの戻り値の型は intでなければなりません。コールバックが 0 より小さい値を返す場合は, opencreatfopenは異常終了します。エラー・コールバックはエラー条件を修正し,0 以上の状態を返すことにより, creat呼び出しを続行できます。上記の open文を例にとってみると, acc_callbackの関数プロトタイプは次の文のようになります。


#include <rms.h> 
 
int acc_callback(int *first_arg, struct FAB *fab, struct RAB *rab); 

FAB と RAB は <rms.h>ヘッダ・ファイルに定義されており,ルーチンに渡される実際のポインタは,ファイル file.dat をオープンするために使用される RAB と FAB を指すポインタです。

アクセス・コールバック・ルーチンが確立された後,このルーチンは, RMS 関数 sys$create または sys$open を呼び出す直前に,オープン・タイプのルーチンで呼び出されます。エラー・コールバック・ルーチンが確立され, sys$create または sys$open 関数からエラー状態が返された場合は,状態が確認され,エラー値が検出された直後に,コールバック・ルーチンが呼び出されます。

注意

コールバック関数で RAB または FAB を操作すると,その後の HP C RTL I/O 関数の呼び出しで重大な問題が発生する可能性があります。

表 REF-3 は RMS キーワードと値を示しています。

表 REF-3 RMS の有効なキーワードと値
キーワード 説明
"acc" コールバック アクセス・コールバック・ルーチン。
"alq = n" 10 進数 割り当て数量。
"bls = n" 10 進数 ブロック・サイズ。
"ctx = bin" 文字列 '\n' を変換せずに端末に出力する。バイナリ・データをファイルに書き込むときはこのキーワードを使用する。
"ctx = cvt" 文字列 "ctx=nocvt" の前の設定を否定する。これはデフォルトである。
"ctx = nocvt" 文字列 Fortran のキャリッジ制御バイトを変換しない。
"ctx = rec" 文字列 レコード・モード・アクセスを強制する。
"ctx = stm" 文字列 ストリーム・モード・アクセスを強制する。
"ctx = xplct" 文字列 fflush close fclose の呼び出しによって明示的に指定された場合にだけ,レコードを書き込む。
"deq = n" 10 進数 デフォルトの拡張数量。
"dna = filespec" 文字列 デフォルトのファイル名文字列。
"err" コールバック エラー・コールバック・ルーチン。
"fop = val, val ,..."   ファイル処理オプション:
  ctg
cbt
dfw

dlt
tef
cif
sup
scf
spl
tmd
tmp
nef
rck
wck
mxv
rwo
pos
rwc
sqo
連続。
連続最適トライ。
遅延書き込み。共用アクセスのためにオープンされたファイルにだけ適用される。
クローズ時にファイルを削除する。
EOF で切り捨てる。
存在しない場合は作成する。
現在は使用されていない。
クローズ時にコマンド・ファイルとしてサブミットする。
クローズ時にシステム・プリンタにスプールする。
一時的に削除する。
一時的 (ファイル・ディレクトリでない)。
EOF でない。
読み込みチェック比較操作。
書き込みチェック比較操作。
バージョン番号を最大にする。
オープン時にファイルを巻き戻す。
現在の位置。
クローズ時にファイルを巻き戻す。
ファイルは順次処理だけが可能である。
"fsz = n" 10 進数 固定ヘッダ・サイズ。
"gbc = n" 10 進数 ファイルに対して要求されたグローバル・バッファの数。
"mbc = n" 10 進数 マルチブロック・カウント。
"mbf = n" 10 進数 マルチバッファ・カウント。
"mrs = n" 10 進数 最大レコード・サイズ。
"pmt=usr-prmpt" 文字列 端末入力を促すプロンプト。このオプションと "rop=pmt" が指定されている場合は,端末デバイスからの RMS 入力の前に "usr-prmpt" が付加される。
"rat = val, val..."   レコード属性:
  cr
blk
ftn
none
prn
キャリッジ・リターン制御。
レコードがブロック境界にまたがることを禁止する。
Fortran プリント制御。
明示的にキャリッジ制御なしを強制する。
ファイル・フォーマットをプリントする。
"rfm = val"   レコード・フォーマット:
  fix
stm
stmlf
stmcr

var
vfc
udf
固定長レコード・フォーマット。
RMS ストリーム・レコード・フォーマット。
改行区切り文字付きストリーム・フォーマット。
キャリッジ・リターン区切り文字付きストリーム・フォーマット。
可変長レコード・フォーマット。
固定長制御部付き可変長レコード。
未定義。
"rop = val, val..."   レコード処理操作:
  asy 非同期 I/O。
  cco Ctrl/O をキャンセルする (端末 I/O で使用)。
  cvt 端末からの読み込み時に文字を大文字に変換する。
  eof 接続操作の場合のみ,レコード・ストリームを EOF に設定する。
  nlk レコードをロックしない。
  pmt 端末からの入力時に "pmt=usr-prmpt" によって指定されるプロンプトの使用を有効にする。
  pta 端末からの読み込み時に先読みバッファの情報を消去する。
  rea このプロセスに対して読み込み操作のためにレコードをロックするが,他のプロセスがレコードを読み込むことは許可する。
  rlk 書き込みのためにレコードをロックする。
  rne キーボードからの入力時に,入力データの画面表示を行わない。
  rnf 端末入力で Ctrl/U,Ctrl/R,DELETE が制御コマンドとして解釈されないが,アプリケーション・プログラムに渡されることを示す。
  rrl ロックとは無関係に読み込む。
  syncsts 要求されたサービスがタスクをただちに完了したときに,RMS$_SYNCH という正常終了状態を返す。
  tmo I/O 時間切れ。
  tpt 順次レコード・アクセス・モードを使用する put/write サービスがファイルの任意のポイントで発生することを許可し,そのポイントでファイルを切り捨てる。
  ulk RMS が自動的にレコードのロックを解除することを禁止する。
  wat レコードが現在別のストリームによってロックされている場合,そのレコードが使用可能になるまで待つ。
  rah 先読みする。
  wbh 後書きする。
"rtv=n" 10 進数 RMS がメモリ内で管理しなければならない検索ポインタの数 (0〜127,255)。
"shr = val, val, ..."   ファイル共用オプション:
  del
get
mse
nil
put
upd
upi
nql
ユーザによる削除を許可する。
ユーザによる読み込みを許可する。
マルチストリーム接続を許可する。
ファイルの共用を禁止する。
ユーザによる書き込みを許可する。
ユーザによる更新を許可する。
1 人以上のユーザによる書き込みを許可する。
クエリ・ロックを行わない (ファイル・レベル)。
"tmo = n" 10 進数 I/O 時間切れの値。


前へ 次へ 目次 索引



         印刷用画面へ

プライバシー 本サイト利用時の合意事項