Objective c 前往';商店';目标c变量中的单个字节
我需要在目标c中存储单个字节。因此,我可能有这样一个类接口:Objective c 前往';商店';目标c变量中的单个字节,objective-c,byte,bits,Objective C,Byte,Bits,我需要在目标c中存储单个字节。因此,我可能有这样一个类接口: @interface NAD : NSObject @property (...) ... byte; @end 我从uint8\t指针开始,但这变得越来越困难,因为它们实际上是4个字节,或者别的什么 因此,我转而使用NSData。但是NSData以“字节”(复数)表示。这不一定是个问题,但一直以来都需要在这两者之间进行转换 那么,有没有更好的方法将1字节(8位)存储在目标c变量中 非常感谢为什么uint8\u t*而不仅仅是u
@interface NAD : NSObject
@property (...) ... byte;
@end
我从uint8\t
指针开始,但这变得越来越困难,因为它们实际上是4个字节,或者别的什么
因此,我转而使用NSData
。但是NSData
以“字节”(复数)表示。这不一定是个问题,但一直以来都需要在这两者之间进行转换
那么,有没有更好的方法将1字节(8位)存储在目标c变量中
非常感谢为什么
uint8\u t*
而不仅仅是uint8\u t
@property (assign) uint8_t byte;
要将其包装到NSData对象中,请执行以下操作:
uint8_t b = object.byte;
NSData *d = [NSData dataWithBytes:&b length:1];
uint8\u t
指针可以是4字节,但uint8\u t
将是8位。为什么你需要一个指针,如果它是指针,为什么你关心指针表示本身有多少位?在C标准中,char
正好是一个字节。我如何将uint8\u t
转换为char void*
,以便在NSData
对象中使用?它们是兼容的,因此你可以只获取地址(&self.byte
)。但是为什么要将其包装成NSData
?我需要将其组合成一个NSData
对象以发送到蓝牙设备。NSData
将数据长度与您看到的字节一起存储。当我这样做时,[data appendBytes:&\n nad.byte length:1];
我得到请求的属性表达式的错误地址
。