【问题标题】:How do you pass an array though a function in Objective-C?如何通过 Objective-C 中的函数传递数组?
【发布时间】:2011-10-20 00:42:56
【问题描述】:

我需要一些帮助。我是 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();
}

【问题讨论】:

    标签: objective-c arrays function integer nsnumber


    【解决方案1】:

    您需要像这样使用-intValueNSNumber 拆箱:

    for(NSNumber *answer in arrayNumbers) {
        add([answer intValue]);
    }
    

    【讨论】:

      猜你喜欢
      • 2021-03-28
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 2011-11-13
      相关资源
      最近更新 更多