我正在尝试从 NSData 获取字节并将其放入 NSString。当我这样做时,同时添加了“ffffff”:
char *array = (char *)[deviceInfo bytes];
return [NSString stringWithFormat:@"%02x:%02x:%02x:%02x:%02x:%02x", array[5],array[4],array[3],array[2],array[1],array[0]];
返回“53:ffffffcb:ffffffb8:51:09:fffffff0”
最佳答案
此问题与符号扩展有关,因为编译器会将您的signed char
提升为unsigned int
。带有fffff
的数字是负数。 %x
格式需要一个 unsigned int
参数。
正确声明 array
将解决问题:
const uint8_t *array = [deviceInfo bytes];
关于ios - NSString stringWithFormat 添加了 "ffffff",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37109935/