OC可变参数的函数实现
2016-10-19 本文已影响155人
Demonboy
我们常见的可变参数是这样的
字典这样的
数组提示框
1,实现的方法
- (void)sayHello:(NSString*)strs,...
{
va_listargs;
va_start(args, strs);
if(strs)
{
NSString* otherString;
NSLog(@"%@",strs);//输出第一个字符串
while(1)//在循环中遍历
{
//依次取得所有参数
otherString =va_arg(args,NSString*);
if(otherString ==nil)//当最后一个参数为nil的时候跳出循环
break;
else
NSLog(@"%@",otherString);
}
}
va_end(args);
}
2,调用方法
[self sayHello:@"nihao",@"有钱",@"有命",nil];//nil一定有 终止条件
3,输出
2016-10-19 14:11:12.799阿打算[40708:5626032] nihao
2016-10-19 14:11:12.799阿打算[40708:5626032] 有钱
2016-10-19 14:11:12.800阿打算[40708:5626032] 有命