본문 바로가기

iPhone & Cocoa

[NSString stringWithString:nil] 의 리턴값은 어떻게 될까?

728x90
반응형

NSLog(@"result = [%@]", [NSString stringWithString:nil]);


결과는 





crash!!

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSPlaceholderString initWithString:]: nil argument'


그렇다면


[[NSString alloc] initWithString:nil] 의 결과값은?


역시 crash!!


*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSPlaceholderString initWithString:]: nil argument'

마지막으로


[NSString stringWithFormat:@"%@", nil] 은 어떨까?


result = [(null)]


안 죽는다...



결국


[NSString stringWithString:NSStringVariable] 을 사용하는 것보다는

[NSString stringWithFormat:@"%@", NSStringVariable] 을 사용하는 것이 좋고


[[NSString alloc] initWithString:NSStringVariable] 을 사용하는 것보다는

[[NSString alloc] initWithFormat:@"%@",NSStringVariable] 을 사용하는 것이 안정적이다.


반응형