所以,我想把一个实例变量放入 NSString 中,就像这样:
NSString *theAnswer = (@"The answer is %@\n", self.answer);
我不确定我是否正确。我认为 NSString 会像 NSLog 一样工作,但显然它并不是这样的。
theAnswer 只返回实例变量而没有 "The answer is"。
有人能告诉我为什么以及如何解决这个问题吗?
谢谢。
所以,我想把一个实例变量放入 NSString 中,就像这样:
NSString *theAnswer = (@"The answer is %@\n", self.answer);
我不确定我是否正确。我认为 NSString 会像 NSLog 一样工作,但显然它并不是这样的。
theAnswer 只返回实例变量而没有 "The answer is"。
有人能告诉我为什么以及如何解决这个问题吗?
谢谢。
NSString *theAnswer = [NSString stringWithFormat:@"The answer is %@", self.answer];
("param1", param2)
的形式进行初始化的。对于NSString的情况,你可以像dj2一样操作:NSString *theAnswer = [[NSString alloc] initWithFormat:@"The answer is %@", self.answer];
在这里,你需要将theAnswer声明为NSString指针,因为所有的Objective-C对象都是指针。然后再次说明它将被分配到哪个类下面(在这种情况下是NSString),然后说明你将如何初始化它,在这种情况下,你将使用initWithFormat:
来初始化它。