我需要幫助調試此錯誤Expected Identifier
。該代碼是 -Objective-C預期標識符 - 簡單的語法調試問題
+(NSString *)dayOfWeek {
NSDate *day = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:NSWeekdayCalendarUnit fromDate:day];
day = [calendar dateFromComponents:components];
NSLog(@"The DAY OF THE WEEK is -- %@", day);
NSArray *daysOfTheWeek = [NSArray arrayWithObjects:@"Sunday", @"Monday", @"Tuesday", @"Wednesday", @"Thursday", @"Friday", @"Saturday", nil];
NSString *dayName = [[[NSString alloc] initWithFormat:[daysOfTheWeek objectAtIndex:[[components weekday]-1]]]];
return dayName;
}
我得到的錯誤標記爲-1]
,將]
下方。
「我改變initWithFormat由於編譯器警告」。將原始字符串傳遞給接受格式字符串的函數實際上是一個非常嚴重的錯誤。很顯然,這裏有一組固定的輸入,但如果其中一天恰好是@「Mond%@ y」,程序就會崩潰。 – 2011-05-05 09:14:12
+1'initWithString:' – 2011-05-05 09:21:25
@Jon Hess謝謝指出! – 2011-05-05 09:29:33