2011-04-04 99 views
0

在Xcode中找不到編譯問題時遇到問題。我得到的錯誤是Expected ']' before ';' token丟失方括號問題

你能幫我找到問題嗎?

這是在執行文件的方法:

- (IBAction) sendButtonTapped:(id)sender 
{ 
    NSString* themessage = [NSString stringWithFormat:@"I'm %@ and feeling %@ about it.", 
           [activities objectAtIndex:[tweetPicker selectedRowInComponent:0]]; 
    [feelings objectAtIndex:[tweetPicker selectedRowInComponent:1]]]; 
    NSLog(themessage); 
} 

提前感謝!

回答

4

你有';'在第二行應該是':

NSString* themessage = 
     [NSString stringWithFormat:@"I'm %@ and feeling %@ about it.", 
       [activities objectAtIndex:[tweetPicker selectedRowInComponent:0]], 
       [feelings objectAtIndex:[tweetPicker selectedRowInComponent:1]] 
     ]; 
2

(1)derp。另一個人說什麼; (2)不要直接將字符串傳遞給NSLog();否則,將不會將字符串直接傳遞給NSLog();否則,將不會將字符串直接傳遞給NSLog()。如果您只想記錄一個字符串,請執行NSLog(@"%@", aString);

+0

你能解釋爲什麼(2)? – DMan 2011-04-04 23:30:01

+0

當然 - 「NSLog()」的第一個參數是格式字符串。任何包含的'%'序列都將被解釋。嘗試打印'NSLog(@「%@%@%@」)';它會崩潰。如果你的字符串碰巧有任何隨機的'%'序列,它會導致類似的崩潰。 – bbum 2011-04-05 00:03:51