我需要一些帮助。我是Objective-C的新手,并试图学习如何在Xcode 3.0中编写iPhone应用程序。 我试图通过一个函数传递我的数组,我很困惑。谢谢您的帮助。 这是我的代码:
#import <Foundation/Foundation.h>
void add(int x) {
NSLog(@"%i + 2 = %i", x, x + 2);
}
int main (int argc, const char * argv[]) {
NSNumber *arrayNumber = [[NSNumber alloc] initWithInt:5];
NSNumber *arrayNumber2 = [[NSNumber alloc] initWithInt:9];
NSMutableArray *arrayNumbers = [[NSMutableArray alloc] initWithCapacity:1];
[arrayNumbers addObject:arrayNumber];
[arrayNumbers addObject:arrayNumber2];
NSLog(@"object at index 0 = %i", [[arrayNumbers objectAtIndex:0] intValue]);
NSLog(@"object at index 1 = %i", [[arrayNumbers objectAtIndex:1] intValue]);
for(NSNumber *answer in arrayNumbers) {
add();
}
return 0;
}
我对使用add()的部分括号中的内容感到困惑:
for(NSNumber *answer in arrayNumbers) {
add();
}
答案 0 :(得分:1)
您需要使用-intValue
取消装箱NSNumber
,如下所示:
for(NSNumber *answer in arrayNumbers) {
add([answer intValue]);
}