我正在使用thsi函数从字符串中检索不同的字符,并向它们添加5以显示相应的字符,例如。 'a'显示'f','h'显示'm'.. 但问题是我无法将这些字符添加到一个字符串中,我可以使用它来显示像'fm'......任何人都可以帮忙吗?继承人的代码 strResult(mutablestring)仅变为null。
str=@"John";
int a=[str length];
for(i=0;i<a;i++)
{
char ch=[str characterAtIndex:i];
ch=ch+5;
temp=[NSString stringWithFormat:@"%c",ch];
[strResult appendString:temp];
NSLog(@"%c",ch);
}
答案 0 :(得分:19)
首先,您需要确保分配字符串strResult
,如下所示:
NSMutableString *strResult = [NSMutableString string];
二;你可以,而且确实应该使用-appendFormat:
将字符添加到字符串中;暂时的额外字符串是没用的。
你想要什么:
NSString *str = @"abcdef";
NSMutableString *strResult = [NSMutableString string];
for (NSUInteger i = 0; i < [str length]; i++) {
char ch = [str characterAtIndex:i] + 5;
NSLog(@"%c", ch);
[strResult appendFormat:@"%c", ch];
}
NSLog(@"%@", strResult);
这应该产生:
f
g
h
i
j
k
fghijk