【问题标题】:Byte(dec)/Integer to Byte(hex)字节(十进制)/整数到字节(十六进制)
【发布时间】:2015-08-08 04:45:38
【问题描述】:

我有一个将整数转换为两个 dec 字节的方法:

- (void)intToBytes:(NSInteger *)integer {
    int16_t i = integer;
    Byte b0 = (Byte)(i / 256);
    Byte b1 = (Byte)(i % 256);

    NSLog(@"BYTES: %hhu, %hhu", b0, b1);
}

如何将这些十进制字节转换为十六进制?还是直接将整数转换为十六进制字节?

【问题讨论】:

  • 十六进制是什么意思?
  • 您是否阅读过可用的字符串格式说明符?查看NSString stringWithFormat: 的文档并点击链接。
  • 例如我有一个整数 = 449。它的字节 dec 值为 1 和 193。但我需要 0x01 0xC1 的十六进制字节。
  • "0x01 0xC1" 只是一个表示。字节定义为UInt8你有什么问题?

标签: objective-c hex byte decimal


【解决方案1】:

试试这个

NSInteger a = 449;
NSString * hex = [NSString stringWithFormat:@"%x",(unsigned int)a];

这里的十六进制是“1c1”

【讨论】:

    猜你喜欢
    • 2017-09-13
    • 2023-03-14
    • 1970-01-01
    • 2013-09-20
    • 2011-01-30
    • 2018-03-21
    • 2012-01-24
    • 2018-02-28
    相关资源
    最近更新 更多