Я хотел бы написать функцию в Objective-C, такую как приведенная ниже, которая принимает переменное число аргументов и передает эти аргументы в +stringWithFormat:
. Я знаю о vsnprintf
, но это означало бы преобразование 'формата' NSString в C и обратно (и это также означало бы преобразование заполнителей форматирования внутри него ...).
Код ниже компилируется, но, конечно, не ведет себя так, как я хочу:)
NSString *estr(NSString *format, ...) {
va_list args;
va_start(args, format);
NSString *s = [NSString stringWithFormat:format, args];
va_end(args);
return s;
}
По существу: существует ли va_list
-дружественная версия метода +stringWithFormat:
или можно написать один?