iOS:将十进制转换为2字节十六进制格式

iOS:将十进制转换为2字节十六进制格式,ios,objective-c,hex,decimal,bytearray,Ios,Objective C,Hex,Decimal,Bytearray,我有十进制值48,我需要将其转换为2十六进制字节格式 int a=48; 在一个值中有48,需要在2个字节中填充48 fill data[0]=/*converted data*/ fill data[1]=/*converted dara*/ 请帮助我使用示例代码,因为我对objective c编码还不熟悉。转换后的数据包含格式为ex:0x03,0x04的数据 如何填写数据。请帮助我2字节十六进制格式。。。啊 我不太确定我是否理解你的问题,但也许

我有十进制值48,我需要将其转换为2十六进制字节格式

            int a=48;
在一个值中有48,需要在2个字节中填充48

     fill data[0]=/*converted data*/
     fill data[1]=/*converted dara*/
请帮助我使用示例代码,因为我对objective c编码还不熟悉。转换后的数据包含格式为ex:0x03,0x04的数据
如何填写数据。请帮助我

2字节十六进制格式。。。啊

我不太确定我是否理解你的问题,但也许这会有帮助:

int a = 48;
NSString* str = [NSString stringWithFormat:@"%02x", a];     //  "30"

int byte1 = [str characterAtIndex:0];       // 51  (ASCII code for '3')
int byte2 = [str characterAtIndex:1];       // 48  (ASCII code for '0')
这将返回两个字节,表示构成十六进制数“30”的ASCII字符

如果您确实希望字节包含值3和0,则更容易:

int a = 48;
int byte1 = a / 16;       // 3
int byte2 = a % 16;       // 0
类似地,如果希望将48个值转换为0x0030,字节1设置为0x00,字节2设置为0x30,则只需执行以下操作:

int a = 48;
int byte1 = a % 256;       // 48
int byte2 = a / 256;       // 0

希望这能有所帮助。

你能告诉我投票失败的原因吗,或者你不明白问题所在你发布的代码中的
fill
?提供有关您正在寻找的转换的更多详细信息。你的问题很混乱,也不清楚。你是警察的受害者。。。或者我喜欢叫他们的混蛋。不要把它当成个人的事,你只是可能没有他们那么聪明。。。我们都不是。也就是说,你的问题在上下文中很弱,我同意rmaddy的观点,什么是fill?十进制格式的48应该用2个字节来拟合。可能吗?我的最后一个例子,在字节1和字节2中存储48不是符合这个标准吗?