Objective-C:NSMutableString replaceCharactersInRange引发异常

时间:2010-01-10 03:21:40

标签: iphone objective-c string

我希望这段代码可以用一些爱代替仇恨。

 NSMutableString *teststring=@"I hate programming my iPhone";

 NSString *overwriteSource=@"love";

 NSRange temprange=NSMakeRange(2, 4);

 [teststring replaceCharactersInRange:temprange withString:overwriteSource];

 NSLog(@"%@",teststring);

由于未捕获的异常而终止,我无法弄清楚原因。救命 ! (并谢谢)

1 个答案:

答案 0 :(得分:7)

在第一行中,您尝试将NSString *(@“我讨厌......”)分配给NSMutableString *(teststring)。

您的原始代码应该为您提供编译警告:

  

不兼容的Objective-C类型   初始化'struct NSString *',   预期'struct NSMutableString *'

以下内容将允许您的代码示例正确编译和运行:

NSMutableString *teststring=[NSMutableString stringWithString:@"I hate programming my iPhone"];