- ★★Java質問・相談スレッド171★★
627 :デフォルトの名無しさん[sage]:2014/12/02(火) 00:59:15.69 ID:eCgy1Phn - >>617
Cではコンパイルの前に、プリプロセッサがある プリプロセッサでは、その時点で値が確定できるものは、 計算して確定してしまう Cでもマクロを使うと、プリプロセッサで数値が確定してしまうから、 デバッグでは元の数値がわからない #define MAC1 (1+2) こう定義して、ソースコードのどこかで、 MAC1を使うと3になっていて、 この数字はどこから来たのか、さっぱりわからないw その他にも、sizeof(型)のように一見、関数・演算子などに見えるが、 プリプロセッサ時に、数値が確定するため、 その際、定数に変換されてしまうものもある
|