如何将char数组更改为NSString

时间:2011-09-19 12:10:51

标签: iphone nsstring

例如我有一个char数组:

char array[8];

我试过了:

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

但显示损坏的字符

2 个答案:

答案 0 :(得分:14)

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

NSLog(@"%@", marketPacket);

NSString是一个类,你创建它的一个实例,所以你必须放一个*。 如果您创建一个数组,只需填充它以查看某些内容..

答案 1 :(得分:0)

更改为

NSString *marketPacket

实际上应该给你一个编译器错误。奇怪。至少,假设你复制并粘贴了代码,你需要一个指向NSString的指针(因为它是一个受管对象)。