我有以下代码行
NSMutableArray *marray = [[NSArray arrayWithObjects: @"4", @"1", @"9", nil]mutableCopy];
我想用以下行替换它
NSMutableArray *marray = [[NSMutableArray alloc]initWithArray:garr];
其中 garr 是来自全局方法的全局数组
问题是代码在调用第一行时运行良好,但在使用第二行时代码崩溃,感谢您的帮助和想法,谢谢,知道第一个是 NSArray 但 garr 变量源是 NSMutable 数组这里是代码加尔
garr = [[NSMutableArray alloc]init];
for (int x = 0; x < 10; x++) {
[garr addObject:[NSNumber numberWithInt: arc4random()%200]];
这是错误消息控制台错误:2012-09-02 14:46:42.976 sort_alg[1561:207] -[NSCFNumber UTF8String]: unrecognized selector sent to instance 0x4b1a170 2012-09-02 14:46:42.978 sort_alg[1561: 207] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[NSCFNumber UTF8String]:无法识别的选择器发送到实例 0x4b1a170”*第一次抛出调用堆栈:–</p>
这是生成最终值的代码
NSString *element;
NSEnumerator *iterator = [marray objectEnumerator];
while ((element = [iterator nextObject]) != nil)
printf("%s ", [element UTF8String]);
printf("\n");
[marray release]; // array needs to be released!
[pool release];
谢谢