我有一个#define hhh "uu"
然后我想使用以下方法连接字符串:
NSString *str [NSString stringWithFormat@"%@%@",hhh,"ii"];
但我收到编译错误。
我有一个#define hhh "uu"
然后我想使用以下方法连接字符串:
NSString *str [NSString stringWithFormat@"%@%@",hhh,"ii"];
但我收到编译错误。
第一个问题:您:
在stringWithFormat
. 第二个问题:您缺少变量名str
和初始化表达式之间的赋值运算符。
第三个问题:格式字符串的第二个参数@"%@%@"
是一个普通的标准 C 字符串(aka, char*
),其中格式字符串调用一个对象(aka, NSString
)。@
在字符串文字前添加a :
NSString* str = [NSString stringWithFormat: @"%@%@",hhh,@"ii"];
(编辑假设错误,我忽略了define
:我在这里假设,即hhh
对象引用,例如id
,NSString*
或其他东西)。
由于hhh
也是一个纯字符串,您应该%s
在格式字符串中指定为占位符:
NSString* str = [NSString stringWithFormat: @"%s%@",hhh,@"ii"];
正如@sch 推荐的那样。