我已经定义了预处理器指令:
#define PTM_RATIO 32
#define PTM_RATIO_2 isIPad?64:32
然后在一个方法中,我使用上述指令,如下所示:
NSLog(@"PTM_RATIO %d",PTM_RATIO);
NSLog(@"PTM_RATIO_2 %d",PTM_RATIO_2);
float32 test=100*PTM_RATIO;
float32 test2=100*PTM_RATIO_2;
NSLog(@"Test %f",test);
NSLog(@"Test2 %f",test2);
这是上面代码的输出:
2013-03-25 23:43:57.011 Box2d[3625:15203] PTM_RATIO 32
2013-03-25 23:43:57.019 Box2d[3625:15203] PTM_RATIO_2 32
2013-03-25 23:43:57.020 Box2d[3625:15203] Test 3200.000000
2013-03-25 23:43:57.021 Box2d[3625:15203] Test2 32.000000
如您所见,PTM_RATIO 和 PTM_RATIO_2 都是 32。那为什么当 100 乘以 PTM_RATIO 时得到 3200.000000,而乘以 PTM_RATIO_2 时得到 32.000000?