iOS.NSString.pitfall-in-using-nsstring

1. NSString的使用

在CodeReview中, 发现类似以下代码, 表示深深受伤了:

 1     NSString* fString = [NSString stringWithFormat:@"F_%p", [NSObject class]];
 2     char* buffer = (char*)[fString UTF8String]; 
 3     buffer[0] = 'P'; // A
 4     NSString *pString = [NSString stringWithCString:buffer encoding:NSUTF8StringEncoding];
 5     
 6     NSLog(@"f: %@ | p:%@", fString, pString);
 7 
 8 ......
 9 // codes using fString
10 // codes using pString

在A行代码执行后, fString就会发生变化, 变成"P_XXXX"。

做CodeReview时可以让人大开眼界, 代码是千奇百怪.

---
原文地址:https://www.cnblogs.com/cwgk/p/3380878.html