标签: nsnumber

往返文本和返回

使用Cocoa或basic c,我如何将double转换为字符串表示形式,然后将其转换回完全相同的double.可读性并不重要,只有准确性.例如,这将工作:
双a,b;
a =某个值;
b = [[[NSNumber numberWithDouble:a] stringValue] doubleValue];

c cocoa printf nsnumber

0
推荐指数
1
解决办法
331
查看次数

NSNumber intValue给出了EXC_BAD_ACCESS

我有一个NSNumber通过第三方API传递,当我在索引上调用intValue时,我得到一个EXC_BAD_ACCESS错误:

-(CPFill *) barFillForBarPlot:(CPBarPlot *)barPlot recordIndex:(NSNumber *)index; 
{
    NSLog(@"bar index %i", index);
    int value = [index intValue];
}
Run Code Online (Sandbox Code Playgroud)

我在调试器中得到的输出是:

条形指数0

条形指数1

程序接收信号:"EXC_BAD_ACCESS".

到底他妈发生了什么?

我注意到第一次调用该方法时,index是nil,但下次显然不是......

我怎么调试这个?!?!它是如此微不足道的事情,但我似乎无法解决它!

iphone exc-bad-access objective-c nsnumber

0
推荐指数
1
解决办法
2091
查看次数

是一系列[array addObject:[[NSNumber alloc] initWithBool:someVariable]?]创建的内存泄漏;

我是否通过以下方式创建多个内存泄漏:

NSMutableArray *array=[[NSMutableArray alloc] init];
[array addObject:[[NSNumber alloc] initWithBool:boolVariable1]];
[array addObject:[[NSNumber alloc] initWithBool:boolVariable2]];
[array addObject:[[NSNumber alloc] initWithInt:intVariable]];
[array addObject:[[NSNumber alloc] initWithFloat:floatVariable]];
[array writeToFile:[self dataFilePath] atomically:YES];
[array release];
Run Code Online (Sandbox Code Playgroud)

使用起来更好:

[array addObject:[NSNumber numberWithInt:intVariable]];
Run Code Online (Sandbox Code Playgroud)

memory-leaks objective-c nsnumber alloc

0
推荐指数
1
解决办法
552
查看次数

NSNumber:stringValue崩溃,描述有效

[measureValue stringValue] 给了我这个例外:

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [NSCFString stringValue]:无法识别的选择器发送到实例0x4dde570'

[measureValue description] 工作得很好

但我想我应该stringValue在代码中使用,对吧?

这是代码:

NSNumber *measureValue = [NSString stringWithFormat:@"%i", [cellContent integerValue]];

//if imperial (inches)
if ([[[NSUserDefaults standardUserDefaults] stringForKey:@"Measure"] isEqualToString:@"Imperial"] ) {

    //if height
    if ([currentQuestion isEqualToString:@"Height"]) {
        measureValue = [NSNumber numberWithDouble:(2.54 * [measureValue doubleValue])];
    //elseif weight
    } else {
        measureValue = [NSNumber numberWithDouble:(0.45359237 * [measureValue doubleValue])];
    }

    //NSLog(@"%@", [measureValue stringValue]);
    cellContent = [measureValue description];
Run Code Online (Sandbox Code Playgroud)

cocoa exception objective-c nsnumber nsstring

0
推荐指数
1
解决办法
3877
查看次数

圆值表示iOS中的浮点值

我正在开发一个应用程序,并想要舍入值,即如果输出是4.8我想显示4.8而如果输出是4.0,我想显示4

此外,如果我可以精确舍入值,那将是很好的:如果值是4.34然后舍入到4.3而如果它是4.37然后将其舍入到4.4

iphone xcode objective-c nsnumber ios

0
推荐指数
1
解决办法
7102
查看次数

不能乘以或除以大或小的浮点数?

很抱歉没有发布任何代码.这个问题涉及在xcode ios中工作时浮点数的除法和乘法.

我有变量,我需要除以2.055926336e + 09.但遗憾的是编译器没有划分它?

我如何在代码中使用它

float variable1=((variable2)/(2.055926336e+09));
Run Code Online (Sandbox Code Playgroud)

这对于用较小的值进行除法是正确的(例如: - (1 /(2.055926336e + 09))这是什么原因?任何有效的方法来完成这项工作?

提前致谢!

xcode nsnumber ios

0
推荐指数
1
解决办法
1355
查看次数

ARC不允许将'int'隐式转换为'NSArray*'

我试图用整数填充我的数组.但是,对我来说有些奇怪的事情并不像我想的那么容易.以下是对所发生情况的描述.

代码的最后一行给了我错误."不允许将int隐式转换为NSArray"

//.h file
{
NSArray storeDisk[15];
}
property int virdCount;
property (nonatomic, strong)NSArray *storeDisk;

//.m file

virdCount+=virdCount;
storeDisk[0]=virdCount;
Run Code Online (Sandbox Code Playgroud)

nsnumber nsarray ios

0
推荐指数
1
解决办法
4548
查看次数

获得NSSet中最高的NSNumber

我有一个NSMutableSet包含NSNumbers,我需要得到最高的一个.我该怎么办?

cocoa-touch nsnumber nsset

0
推荐指数
1
解决办法
141
查看次数

在迅速划分两个NSNumber?

我有两个NSNumber,我想分开,但在代码的最后一行我得到错误:"无法使用类型'的参数列表调用'/'(@ Ivalue NSNumber,@ Ivalue NSNumber)'"

var firstnumber: NSNumber = object["numberone"] as NSNumber
var secondnumber: NSNumber = object["numbertwo"] as NSNumber
var calculated: NSNumber = firstnumber / secondnumber
Run Code Online (Sandbox Code Playgroud)

谁能帮我这个??

nsnumber divide ios swift

0
推荐指数
1
解决办法
2755
查看次数

NSNumber是否为其保留的数字添加任何额外字节?

我正在使用Objective-C,我需要将NSArray中的int添加到NSMutableData(我正在准备通过连接发送数据).如果我用NSNumber包装int,然后将它们添加到NSMutableData,我怎么能找出NSNumber int中有多少字节?是否有可能使用sizeof(),因为根据Apple文档,"NSNumber是NSValue的子类,它提供任何C标量(数字)类型的值."?

例:

NSNumber *numero = [[NSNumber alloc] initWithInt:5];

NSMutableData *data = [[NSMutableData alloc] initWithCapacity:0];

[data appendBytes:numero length:sizeof(numero)];
Run Code Online (Sandbox Code Playgroud)

byte integer objective-c nsnumber nsdata

-1
推荐指数
1
解决办法
2221
查看次数

NSNumber返回错误的值

我已经为对象的属性NSDictionary分配了'price'键的NSNumber值,但是当我记录数字值时,它是一个奇怪的负数!

item.price = [food valueForKey:@"price"];
Run Code Online (Sandbox Code Playgroud)

价格属性为 NSNumber

[[food valueForKey:@"price"] class]
Run Code Online (Sandbox Code Playgroud)

将打印__NSCFNumber正确的。

[[food valueForKey:@"price"] intValue]
Run Code Online (Sandbox Code Playgroud)

返回0x000000000000c350那是50000正确的

但是当我登录item.price或者[item.price integerValue]-15536这是完全错误的!

任何的想法?

食物json样本:

{“ title”:“ Pizza”,“ price”:50000}

在此处输入图片说明

objective-c nsdictionary nsnumber

-1
推荐指数
1
解决办法
723
查看次数

if和else语句都是随机调用的

我有一个解析HTML的方法.在那里有一个if/else语句:

if ((NSNumber1 == NSNumber2)) {
    NSLog(@"dafuq1?");
} else {
    NSLog(@"dafuq2?");
}
Run Code Online (Sandbox Code Playgroud)

日志有时像这样:

...:dafuq1?

...:dafuq2?

所以两个部分都被调用了.但有时候只有其中一个被召唤!为什么?

顺便说一句.iOS 7.0.4,Xcode 5.0.1

并且 (NSNumber1 == NSNumber2)是真实的

objective-c nsnumber

-2
推荐指数
1
解决办法
99
查看次数

直接将NSNumber转换为NSString

如何?

.H

@property (nonatomic, strong) NSNumber *seasonRoundN;
@property (nonatomic, strong) NSString *seasonRound;
Run Code Online (Sandbox Code Playgroud)

.M

_weMeetAgain = [NSNumber numberWithInt:13];
_seasonRound = [NSString stringWithFormat:_weMeetAgain]; // incompatible :S
Run Code Online (Sandbox Code Playgroud)

应该更好地看一下参考文献:(答案如下)

_weMeetAgain = [NSNumber numberWithInt:17];
_seasonRound = [NSString stringWithFormat:@"%@", _weMeetAgain];
Run Code Online (Sandbox Code Playgroud)

求助:P,谢谢.

objective-c nsnumber nsstring ios

-5
推荐指数
2
解决办法
2755
查看次数