如何使用 Objective-C 从十六进制中获取整数?
How get int from hex with Objective-C?
我有十六进制值 '\xa1'
的字符,它是 161,我如何在 int value
中得到 161?
这对我不起作用:
char a = '\xa1';
int b = a;
我有一个 uint8_t buffer[4]
,它从 NSInputStream
读取字节,具有这样的十六进制值,如何从该数组中获取具有 int 值的数组?
A char
是有符号的(其中高位指定数字为负数)。您显然想要一个 unsigned char
,所以要么:
unsigned char a = '\xa1';
int b = a;
或者
char a = '\xa1';
int b = (unsigned char) a;
我有十六进制值 '\xa1'
的字符,它是 161,我如何在 int value
中得到 161?
这对我不起作用:
char a = '\xa1';
int b = a;
我有一个 uint8_t buffer[4]
,它从 NSInputStream
读取字节,具有这样的十六进制值,如何从该数组中获取具有 int 值的数组?
A char
是有符号的(其中高位指定数字为负数)。您显然想要一个 unsigned char
,所以要么:
unsigned char a = '\xa1';
int b = a;
或者
char a = '\xa1';
int b = (unsigned char) a;