この文書の現在のバージョンと選択したバージョンの差分を表示します。
あったら便利なマクロ達 [2011/12/01 22:41] member 作成 |
あったら便利なマクロ達 [2011/12/01 22:46] (現在) member |
||
---|---|---|---|
ライン 13: | ライン 13: | ||
#define MIN3(a, b, c) ((a) < (MIN(b, c)) ? (a) : (MIN(b, c))) | #define MIN3(a, b, c) ((a) < (MIN(b, c)) ? (a) : (MIN(b, c))) | ||
#define MIN4(a, b, c, d) ((a) < (MIN3(b, c, d)) ? (a) : (MIN3(b, c, d))) | #define MIN4(a, b, c, d) ((a) < (MIN3(b, c, d)) ? (a) : (MIN3(b, c, d))) | ||
- | 二つ以上の最大値や最小値をとるマクロです。MaxとかMinを使っているので先に定義しておいてください。 | + | 二つ以上の最大値や最小値をとるマクロです。 |
+ | MaxとかMinを使っているので先に定義しておいてください。 | ||
#define SWAP(a,b) ((a != b) && (a += b,b = a - b,a -= b)) | #define SWAP(a,b) ((a != b) && (a += b,b = a - b,a -= b)) | ||
ライン 19: | ライン 20: | ||
#define SIGN(a) (a) / ABS(a) | #define SIGN(a) (a) / ABS(a) | ||
- | 変数の符号をとるマクロです。ABSというマクロが定義されていないと使えません。また0には使えません。 | + | 変数の符号をとるマクロです。ABSというマクロが定義されていない |
- | + | と使えません。また0には使えません。 | |
- | + | ||
#define DEG_TO_RAD(deg) (((deg) * PI) / 180.0) | #define DEG_TO_RAD(deg) (((deg) * PI) / 180.0) | ||
#define RAD_TO_DEG(rad) (((rad) * 180.0) / PI) | #define RAD_TO_DEG(rad) (((rad) * 180.0) / PI) | ||
- | PIは円周率です。どっかでdefineしておいてください。こいつらはラジアンと角度の変換するマクロです。 | + | PIは円周率です。どっかでdefineしておいてください。 |
+ | こいつらはラジアンと角度の変換するマクロです。 | ||
こいつらも結構便利です。 | こいつらも結構便利です。 | ||