这是我的应用程序的一个基本部分,实际上它是一个功能。
-(void)appendArguments:(NSString *)argument {
NSString *temp = [NSString stringWithFormat:_path, argument;
}但这是不可能的。这里,_path是一个包含整数参数的字符串的实例变量。字符串参数包含整数,例如:
_path = @"I got %d apples, ate %d, I am left with %d";
argument = @"7,3,7-3";
*temp = [NSString stringWithFormat:_path, argument;我们是否可以将参数数组作为对象,并将它们替换为指针参数。
因为这个原因,我的应用程序被搁置了。
发布于 2014-12-05 14:15:10
您可以使用va_list。
void myLog(NSString *format, ...)
{
#ifdef DEBUG
va_list ap;
va_start(ap, format);
NSString *string = [[NSString alloc] initWithFormat:format arguments:ap];
fprintf(stdout, "%s", string.UTF8String);
va_end(ap);
#endif
}
@implementation MyViewController
- (void)viewDidLoad
{
[super viewDidLoad];
myLog(@"%s, %@\n", __func__, self);
}发布于 2014-12-05 14:18:49
是的你能做到的。使用NSMutableString和附加字符串为字符串创建自定义格式。
NSString *_path = @"I got %d apples, ate %d, I am left with %d";
NSString *argument = @"7,3,7,-3";
NSMutableString *fieldString = [NSMutableString new];
[fieldString appendString:[NSString stringWithFormat:@"@\" %@\" ",_path]];
[fieldString appendString:@","];
[fieldString appendString:argument];
NSString *strField = [NSString stringWithString:fieldString];
fieldString = nil;发布于 2014-12-05 14:25:10
NSString* arguments = @"7,3,7-3";
[self appendArguments:arguments];
-(void)appendArguments:(NSString *)argument {
NSString* _path = @"I got %d apples, ate %d, I am left with %d-%d";
NSArray*path=[[NSArray alloc]init];
path=[argument componentsSeparatedByString:@","];
NSString *temp = [NSString stringWithFormat:_path, [path[0] intValue],[path[1] intValue],[path[0] intValue],[path[1] intValue] ];
NSLog(@"%@",temp);
}结果
I got 7 apples, ate 3, I am left with 7-3https://stackoverflow.com/questions/27317633
复制相似问题