0
#define ANOTHER_CONSTANT 200
#define MYDIVISOR 1000/ANOTHER_CONSTANT
然後方法
- (void)result {
NSRange range = [@"--BB-------A----" rangeOfString:@"A" options:NSBackwardsSearch];
int rest = range.location % MYDIVISOR;
NSLog(@"Rest is %i", rest);
}
輸出始終是其餘爲0,不管其中A發生。我已經通過將MYDIVISOR存儲到一箇中間整數變量中解決了這個問題,但我想知道爲什麼它不適用於預定義的常量。有任何想法嗎?
如果整數常量不能均勻分配,還有一個潛在的問題。 – rmaddy 2013-03-07 17:37:59
如果他更改爲float/double,則%不起作用。 – 2013-03-07 17:43:41