B.40. その他の関数

表B.114 表:その他の関数

gentype clamp (gentype x, gentype minval, gentype maxval) gentypef clamp (gentypef x, float minval, float maxval) gentyped clamp (gentyped x, double minval, double maxval)min(max(x, minval), maxval)を計算します。 結果はminval > maxval のときに未定義です。 
gentype degrees (gentype radians)

ラジアンを度に変換し
ます。(180 / π) * radians
を計算します。
gentype max (gentype x, gentype y)
gentypef max (gentypef x, float y)
gentyped max (gentyped x, double y)
x < yのときは、y
それ以外は、x
もしxまたはyが無限また
はNaNのときは、戻り
値は未定義です。
gentype min (gentype x, gentype y)
gentypef min (gentypef x, float y)
gentyped min (gentyped x, double y)
y < xのときは、y
それ以外は、x
もしxまたはyが無限または
NaNのときは、戻り値は
未定義です。
gentype mix (gentype x, gentype y, gentype a)
gentypef mix (gentypef x, gentypef y, float a)
gentyped mix (gentyped x, gentyped y, double a)
xとyの線形ブレンドをします。
x + (y – x) * aの計算を
します。

aは[0.0, 1.0]の範囲内とし
ます。aが範囲外のときの戻り
値は未定義です。
gentype radians (gentype degrees)

度をラジアンに変換します。
(π / 180) * degreesを
計算します。
gentype step (gentype edge, gentype x)
gentypef step (float edge, gentypef x)
gentyped step (double edge, gentyped x)
x < edgeのときに、0.0
それ以外のときに、1.0を返します。
gentype smoothstep (
    gentype edge0,
    gentype edge1,
    gentype x)
gentypef smoothstep (
    float edge0,
    float edge1,
    gentypef x)
gentyped smoothstep (
    double edge0,
    double edge1,
    gentyped x)
x <= edge0のときは、0.0
x >= edge1のときは、1.0
を返します。
edge0 < x < edge1のときは
0と1の間でエルミート補間をし
ます。

スムースに遷移してくれる閾関
数が必要な時に使います。

gentype t;
t = clamp((x - edge0)
/ (edge1 - edge0), 0, 1);
return t * t * (3 - 2 * t);

と同義です。

edge0 >= edge1のとき、
またはx, edge0, edge1
のどれかがNaNのときの結果
は未定義です。

gentype sign (gentype x)

x > 0のときは、1.0
x = -0.0のときは、-0.0
x = +0.0のときは、+0.0
x < 0のときは、-1.0を返します。
xがNaNのときは、0.0を返します。

B.40.1. printf関数

表B.115 表:printf関数

関数詳細 

int printf( constant char * restrict format, …) 

実装システムに依存し
たストリーム(例:stdout)
に、formatが指定する型式
に引数で入力した文字列を
変換します。

処理に成功すると0を返します。
それ以外は-1を返します。

実装が定義するストリーム
(たとえば stdout)に、
format が指定する形式に基づ
いて続く引数を変換し得られる
文字列を出力として書き込みます。
引数の数が format が必要と
する数に満たないときの振る舞
いは未定義です。引数の数が
format が必要とする数より多
いとき、残る引数は評価はされ
ますが無視されます。この関数
は format の終端に達した時
点で返ります。実行に成功する
と 0 を返し、そうでないとき
は -1 を返します。

Copyright 2018-2019, by Masaki Komatsu