Zero

最終更新日05 Jun 2017 02:36

0はすべての整数系データ型のポインタ型の定数として使うことができる。
Cではゼロポインタを表現するためにNULLマクロを定義するのがポピュラーであるが、
C++では型チェックが厳しいので、どのNULLマクロよりもただの0を使った方が問題は少ない。
どうしてもNULLを定義しなければならない場合にはこうする

const int NULL=0

0割を防ぐテクニック

分母がゼロになると、値が無限大になってバグになります。それを防ぐためのテクニックをいくつか。。

ごく微小な値を足しておく

1/(a+1e-5)

これはaが-1e-5だった場合は効きませんね。。

maxを使う

1/max(a,1e-5)

分母のaの値が100%正ならこれでもいいかも。ごく微小な値を足しておく方法よりかは関数呼び出しコストが余分にかかります。


ファイル

サポートサイト Wikidot.com