0

我从我的蓝牙低功耗传感器获取了一些十六进制参数。

当我通过调用在屏幕上打印参数时:

char * gotData = getTheData();
NSLog(@"My data: %u", gotData[1]);

打印实际上将十六进制表示转换为十进制。

我的数据gotData是带有十六进制表示的字符。例如

gotData = [0xFA, 0xCC];

我想将整数值(0xFA)分配给objective-c/iOS中的任何对象。

使用哪一个?

提前致谢!

4

1 回答 1

3

您正在谈论十六进制“演示文稿”。这比你想象的更正确。这是数字数据的一种可能表示形式。Char 可以用 来表示0xFA%u因此不以十六进制格式显示数据。但是,没有任何转换。0xFA与 250 完全相同,只是表示不同。

NSNumber是用于存储数值的适当对象。在您的情况下是否可取取决于您希望如何进一步处理它。

您在 gotData 中的数据根本没有表示出来。它只是一个八位字节流。数字数据。我们整个行业使用的基础数据类型。

如果您想使用十六进制显示它,请NSLog尝试使用%x%X

于 2013-06-02T09:15:09.997 回答