使用字符串崩潰的應用程序。
temp
是普通字符串,strStartDate
也是Date的字符串。 .h文件中打印時出現應用程序崩潰NSString
NSString *temp;
NSString *strStartDate
int status;
.m文件
-(void)viewDidLoad
{
[super viewDidLoad];
status = 1;
strStartDate=[[NSString alloc]init];
[self stateChanged];
}
-(void)stateChanged
{
switch(status)
{
case 0:
NSLog(@"%@",temp);
NSLog(@"Start Date : %@",strStartDate);
break;
case 1:
temp=[[NSString alloc]initWithString:@"Temp is here"];
chargeStartDate=[[NSDate date] retain];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd/MM/YYYY"];
strStartDate = [dateFormat stringFromDate:chargeStartDate];
NSLog(@"string of start date : %@",strStartDate);
[timeFormat release];
[dateFormat release];
break;
}
}
temp
是普通字符串,strStartDate
也從日期字符串。 字符串temp
和strStartDate
都分配相同的地方,既是類變量,又在case 0
中打印相同的地方temp是打印,而strStarDate
崩潰。爲什麼?
我知道這很簡單,但我無法理解。請幫幫我。
這只是一個預感,但你的意思是'dd/MM/yyyy'而不是'dd/MM/YYYY'? – John
在你使用ARC的應用程序中? –
在你上面指定狀態= 1,那麼在情況0下如何控制? –