Iphone 从双精度数组的整数和小数部分提取数字
我想知道使用Cocoa Touch(需要在iPhone上运行)从Objective中的double中提取数字的最优雅方法是什么: 假设你有一张双人票:1.423 你如何得到每个“1”、“4”、“2”、“3”,它们构成了多个变量中的双精度 最后,我想得到如下结果:Iphone 从双精度数组的整数和小数部分提取数字,iphone,objective-c,cocoa-touch,Iphone,Objective C,Cocoa Touch,我想知道使用Cocoa Touch(需要在iPhone上运行)从Objective中的double中提取数字的最优雅方法是什么: 假设你有一张双人票:1.423 你如何得到每个“1”、“4”、“2”、“3”,它们构成了多个变量中的双精度 最后,我想得到如下结果: NSLog(@“以下是数字:%d,%d%d%d”,一、二、三、四) 一个变量应该是1 两个变量应该是4 三个变量应该是2 四个变量应该是3 使用ObjectiveC/cocoa Touch以一种好的方式实现这一点,有什么建议吗 谢谢
NSLog(@“以下是数字:%d,%d%d%d”,一、二、三、四)
一个变量应该是1
两个变量应该是4
三个变量应该是2
四个变量应该是3
使用ObjectiveC/cocoa Touch以一种好的方式实现这一点,有什么建议吗
谢谢。我会将其转换为字符串(使用
+[nsstringwithformat:
),然后使用rangeOfCharactersInSet:
或NSScanner
将其转换为字符串(使用+[nsstringwithformat:
)然后用rangeOfCharactersInSet:
或NSScanner
扫描出这些数字,这是我很快为你准备的东西
NSLog(@"here are the digits : %d , %d %d %d ", one, two, three, four);
然后在代码中执行以下操作:
@interface NSNumber (DigitParsing)
- (NSArray *)arrayOfStringDigits;
@end
@implementation NSNumber (DigitParsing)
- (NSArray *)arrayOfStringDigits {
NSString *stringNumber = [self stringValue];
NSMutableArray *digits = [NSMutableArray arrayWithCapacity:[stringNumber length]];
const char *cstring = [stringNumber cStringUsingEncoding:NSASCIIStringEncoding];
while (*cstring) {
if (isdigit(*cstring)) {
[digits addObject:[NSString stringWithFormat:@"%c", *cstring]];
}
cstring++;
}
return digits;
}
@end
这是我很快为你准备的东西
NSLog(@"here are the digits : %d , %d %d %d ", one, two, three, four);
然后在代码中执行以下操作:
@interface NSNumber (DigitParsing)
- (NSArray *)arrayOfStringDigits;
@end
@implementation NSNumber (DigitParsing)
- (NSArray *)arrayOfStringDigits {
NSString *stringNumber = [self stringValue];
NSMutableArray *digits = [NSMutableArray arrayWithCapacity:[stringNumber length]];
const char *cstring = [stringNumber cStringUsingEncoding:NSASCIIStringEncoding];
while (*cstring) {
if (isdigit(*cstring)) {
[digits addObject:[NSString stringWithFormat:@"%c", *cstring]];
}
cstring++;
}
return digits;
}
@end
14.6566=“14.6.5 6”
<代码>2.0=NaN=
???????14.6566=“14.6 5 6”=>是2.0=“2”“0”NaN=不重要。14.6566=“14.6 5 6”
<代码>2.0=NaN=
???????14.6566=“14.6 5 6”=>是2.0=“2”“0”NaN=不重要。您好,感谢您抽出时间与我们分享。我不知道isdigit是一个标准的C函数,对吗我会试试的谢谢!这对你有用吗?如果是的话,你能帮我记下答案吗?嗨,谢谢你花时间分享。我不知道isdigit是一个标准的C函数,对吗我会试试的谢谢!这对你有用吗?如果是的话,你能帮我标出答案吗?