我double * data = malloc(sizeof(double))
在objectiveC中有一个变量;
我将此变量用作像 data[] 这样的双数组来存储一些数据。现在我想将此数据变量(它是一个双 * 数组)添加为对象NSNumber in iOS. Any idea how I can turn it into iOS object like
NSNumber`?
我double * data = malloc(sizeof(double))
在objectiveC中有一个变量;
我将此变量用作像 data[] 这样的双数组来存储一些数据。现在我想将此数据变量(它是一个双 * 数组)添加为对象NSNumber in iOS. Any idea how I can turn it into iOS object like
NSNumber`?
您可以使用NSData
将任意字节缓冲区包装到 Objective-C 对象中。
用于从双精度数组dataWithBytes:length:
创建NSData
对象,bytes:
或getBytes:length:
从NSData
对象检索数据字节。
根据 Mundi 的回答,试试这个:
NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:0];
for (int i = 0; i < lengthOfDoublearray; i++) { // as premitive DataType array needs predefined length
[array addObject:[NSNumber numberWithDouble:data[i]]];
}
这data
是double
(您使用的)数组。
您不能将一组原语变成一个NSNumber
. 这没有任何意义。
但是,您可以将一个双精度数组转换为一个NSNumbers
. 遍历您的 double* 数组,并使用其类方法将每个数字添加到 anNSMutableArray
中。NSNumber
numberWithDouble: