2014-01-20 82 views
0

我試圖讓一個年齡計數器,但在第一行的錯誤:無效操作數的二進制表示(「廉政」和「的NSString」)

「無效操作數爲二進制表達式( 「廉政」和「的NSString」)」

-(IBAction)OK:(id)sender; { 
    Age = 2013 - textfield.text ; 
    label.text = [NSString stringWithFormat:@"%i" , Age]; 
+0

BTW,標準編碼習慣是有變量和方法名以小寫字符開頭 - - 使用以大寫字母開頭的名字作爲類名。如果你遵循這個約定,你的代碼對於其他人來說更容易理解。 –

回答

1

你需要採取文字的整數值,然後你可以用它做減法。但是,如果字符串不能轉換爲int(例如「this」不是int ...),則NSString的intValue可能會返回0。

-(IBAction)OK:(id)sender; { 
    Age = 2013 - [textfield.text intValue] ; 
    label.text = [NSString stringWithFormat:@"%i" , Age]; 
} 
0

你在這裏犯了一個小錯誤。您是從整數在此減去字符串值:

Age = 2013 - textfield.text ; 

使用,而不是上面這行:

int Age = 2013 - [textfield.text intValue] ; 
相關問題