使用字符串崩溃应用程序。
temp
是普通字符串,strStartDate
也是来自日期的字符串。.h 文件
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
崩溃时打印。为什么?
我知道这很简单,但我无法理解。请帮我。