目标 - C新秀NSString问题

Jac*_*ins 4 string iphone objective-c ios

我有这个代码:

// Fill out the email body text
NSString *emailBody = (@"Name:%@\nNumber of People:\nDate:", name.text);
NSLog(@"%@", emailBody);
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我正在尝试将name.text附加到"Name:"之后的电子邮件正文中.但是,NSLog仅输出name.text中包含的字符串,而不输出电子邮件正文的其余部分.我在这里做错了,代码除了name.text之外还删除了字符串的其余部分?

EG如果name.text包含文本"Jack",则NSLog只输出"Jack"而不是:

Name: Jack
Number of People: x 
Date: x
Run Code Online (Sandbox Code Playgroud)

这就是我要找的.

谁能让我了解我做错了什么?

谢谢,

插口

Vla*_*mir 12

使用+ stringWithFormat方法:

NSString *emailBody = [NSString stringWithFormat:@"Name:%@\nNumber of People:\nDate:", name.text];
Run Code Online (Sandbox Code Playgroud)

你现在拥有的是一个有效的代码,但它没有你想要的:

(@"Name:%@\nNumber of People:\nDate:", name.text);
Run Code Online (Sandbox Code Playgroud)

调用一个逗号运算符 - 它计算它的第一个参数,丢弃它并返回第二个参数,这就是为什么emailBody最终会填充name.text