2011-06-29 21 views
1

我有一个小问题:
我试图给NSString添加一个+1。第一次按下按钮muButton时,它不会添加+1,但会从头开始重复“0”。然而,第二次推动并随后推到muButton确实增加了。你知道什么可以解决这个问题吗?这里是我的代码:问题使用“count ++”:第一次,它重复“0”

- (IBAction)muButton { 
if(count >= 999) return; 
NSString *numValue = [[NSString alloc] initWithFormat:@"%d", count++]; 
result.text = numValue; 
[numValue release]; 

}

- (void)viewDidLoad { 
result.text = @"0"; 
[super viewDidLoad]; 

}

感谢

回答

5

如果count == 0

然后count++ == 0

++count == 1

那是当你为以后反对参数之前使用++会发生什么。

c = 0 
1 + (++c) == 2 
BUT 
1 + (c++) == 1 
c == 1 AFTERWARDS in both cases 

当您使用的预增量++立即发生,而不是如果你当它发生后的参数的操作发生使用后增量。

3
int var = count++; 

等于:

int var = count; 
count = count + 1; 

也许你想用这个:

int var = ++count; 

等于:

count = count + 1; 
int var = count;