使用stringWithUTF8String:方法創(chuàng)建一個NSString對象時在使用時報錯Thread 1: EXC_BAD_ACCESS (code=1, address=0x11518338)峦嗤。
通過調試發(fā)現這個NSString對象是一個僵尸對象复凳,查看代碼后發(fā)現該方法是通過cha r * 創(chuàng)建的,char *在使用完后就釋放了。所以考慮是不是通過該方法創(chuàng)建的對象是不會拷貝數據的糟需。所以網上找了另一個方法創(chuàng)建,最后發(fā)現使用initWithBytes: length: encoding:這個方法后就不會崩潰了且警。
//崩潰代碼
// NSString *str = [NSString stringWithUTF8String:Sinfo.RemoteIP];
//修改代碼
NSString *str = [[NSString alloc] initWithBytes:Sinfo.RemoteIP length:strlen(Sinfo.RemoteIP) encoding:NSUTF8StringEncoding]