我有一个小问题:
我试图给NSString添加一个+1。我第一次按下按钮muButton
时,它不会添加+1,而是从头开始重复“0”。但是,第二次推送和随后推送到muButton
确实正确增加。你知道什么能解决这个问题吗?这是我的代码:
- (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];
}
由于
答案 0 :(得分:5)
如果count == 0
然后count++ == 0
++count == 1
当你在参数之前使用++
而不是在之后使用时会发生什么。
c = 0
1 + (++c) == 2
BUT
1 + (c++) == 1
c == 1 AFTERWARDS in both cases
使用预增量时,++
会立即发生,而不是在参数操作发生后发生后增量时使用。{/ p>
答案 1 :(得分:3)
int var = count++;
等于:
int var = count;
count = count + 1;
也许你想用这个:
int var = ++count;
等于:
count = count + 1;
int var = count;