如何将可变数量的参数“传递”到NSString的+stringWithFormat:

我想用Objective-C编写一个函数,比如下面的函数,它接受数量可变的参数,并将这些参数传递给+stringWithFormat:。我知道vsnprintf,但这意味着将NSString“format”转换为C并返回(也意味着转换其中的格式占位符…)

下面的代码可以编译,但当然不是我想要的:)

NSString*estr(NSString*格式,…){
va_列表参数;
va_开始(参数,格式);
NSString*s=[NSString stringWithFormat:format,args];
va_端(args);
返回s;
}

基本上:是否有va_list-友好版本的+stringWithFormat:方法,或者是否可以编写一个

initWithFormat:参数:

NSString*estr(NSString*格式,…){
va_列表参数;
va_开始(参数,格式);
NSString*s=[[NSString alloc]initWithFormat:格式参数:args]autorelease];
va_端(args);
返回s;
}

他们似乎没有一个方便的构造函数“stringWith…”版本

发表评论