我正在努力将一个简单的计算器作为我学习Object-C和iOS开发的冒险的一部分。
在使用NSString的Object-C中,如何在字符串中查找句点?
根据评论,这是我到目前为止所得到的。
NSString * tmp = [display text];
NSLog(@"%@", tmp); // Shows the number on the display correctly
int x = [tmp rangeOfString:@"."].location;
NSLog(@"%i", x); // Shows some random signed number
if (x < 0) {
[display setText:[[display text] stringByAppendingFormat:@"."]];
}
它仍然无效:(
答案 0 :(得分:0)
NSRange是一个直接的结构...
typedef struct _NSRange {
NSUInteger location;
NSUInteger length;
} NSRange;
int x = [@"hello.there.ok" rangeOfString:@"."].location;
printf("x is %d\n",x);
打印5。
这是一个完整的程序:
int main(int argc, char *argv[])
{
NSString *ht = @"This is a string";
int r1 = [ht rangeOfString:@"is"].location;
int r2 = [ht rangeOfString:@"is a"].location;
int r3 = [ht rangeOfString:@"isnt"].location;
NSLog(@"r1=%d, r2=%d, r3=%d, that's all\n",r1,r2,r3);
}
打印:
Program loaded.
run
[Switching to process 21098]
Running…
2011-01-14 20:45:25.192 DELETEME[21098:a0b] r1=2, r2=5, r3=-1, that's all
在XCode,Mac OS中运行...应该是直截了当的!