2011-09-19 40 views
6

例如我有一個字符數組:如何將char數組改變的NSString

char array[8]; 

我嘗試:

NSString *marketPacket = [NSString stringWithCString:array encoding:NSASCIIStringEncoding]; 
NSLog(@"%@",marketPacket); 

但顯示器損壞字符

+1

對於任何人來到這裏,並被困惑的答案:OP沒有在這個問題的原始版本的'marketPacket'之前,但稍後改變它使整個問題變得毫無意義。 – colincameron

+1

此外,這是第一個谷歌結果「nsstring從字符數組」 – colincameron

+0

不知道爲什麼這是封閉的。太局部? –

回答

0

更改爲

NSString *marketPacket

應該給你一個編譯器錯誤,實際上。奇怪。至少,假設你複製並粘貼了代碼,你需要一個指向NSString的指針(因爲它是一個託管對象)。

12
char array[5] = {'a', 'b', 'c', 'd', '\0'}; 
NSString *marketPacket = [NSString stringWithCString:array encoding:NSASCIIStringEncoding]; 

NSLog(@"%@", marketPacket); 

NSString是一個類,你創建它的一個實例,所以你必須把一個*。 如果你創建一個數組,只是填充它看到的東西..