iOS-参数个数不定的方法

2017-12-15  本文已影响7人  linbj
[self exchangeTitles:@"aaa",@"bbb",@"ccc",@"ddd",nil];

-(void)exchangeTitles:(NSString *)titles,... {
    va_list params;//定义一个指向个数可变的参数列表指针
    va_start(params, titles);//va_start 得到第一个可变参数地址
    NSString *arg;
    if (titles) {
        //将第一个参数添加到array
        //va_arg 指向下一个参数地址
        while ((arg = va_arg(params, NSString *))) {
            if (arg) {
                NSLog(@"%@",arg);
            }
        }
        //置空
        va_end(params);
    }
}

va_arg :
第一次调用va_arg返回parmN之后的参数值,后续的调用依次返回剩下的参数值。parmN应为函数中“...”前最后一个参数值。
上一篇 下一篇

猜你喜欢

热点阅读