株式会社きじねこ

株式会社きじねこは大阪のソフトウェア開発会社です。

C++関数・テンプレート集

1.11 整数除算 (商+剰余,C標準ライブラリ関数 div() のテンプレート版)

同じような内容が続きますが、今回はC言語の標準ライブラリにあるdiv関数をテンプレート化したものです。 C++ではdiv関数が引数の型によって多重定義されています。しかし、返却値の型はC言語と同じで、div_t、ldiv […]

1.9 整数除算で端数切り上げ.(商+剰余)

前回は商のみを求めましたが、今回は余りも求めることにします。 商と余りなので、標準ライブラリのdiv_t等の型を使いたいところですが、テンプレート化しにくいですし、符合無し整数型も扱えませんので、独自にクラステンプレート […]

1.6 整数演算で端数を偶数丸め (最近接偶数への丸め,JIS丸め,ISO丸め)

今回扱うのは整数除算の結果を最近接遇数丸めする方法についてです。 最近接遇数丸めというのは四捨五入に近いのですが、端数が0.5だったときに偶数方向に丸めるというものです。たとえば、1.5でも2.5でも2になりますし、3. […]

1.4 指定された整数型が「符号ビット+絶対値」か否かを判定する。

前回、前々回に引き続き、今回は負の整数値の内部表現が符号ビットと絶対値かどうかを判定します。 これも 2 の補数表現のときと理屈は同じです。-1 の下位 2 ビットが 01 (= 1)であれば「符号ビット+絶対値」です。 […]