objective-c - 将整数转换为十六进制

标签 objective-c c

我只需要将整数转换为十六进制。实际上我有一个 char 数组,我在其中存储十六进制值。

int var;
var=[self getValue];
char hexValues[5];
hexValues[0]= 0x02;
hexValues[1]= 0x04;
hexValues[2]= [self getHexFromInt:var];

现在我认为 getHexFromInt() 返回一个 hex int 值,该值等同于传递的十进制 “var”。它不会包含 0x.. 格式,这就是为什么我认为 char 数组会接受它作为普通 char。所以请建议我如何从 getHexFromInt() 方法返回 "0x.."格式的字符。

最佳答案

十六进制值是一个整数值

十六进制只是一种显示整数的方式。

如果你想创建一个字符串,它是一个整数的十六进制表示,你可以去:

char hexStr[20];
sprintf(hexStr,"0x%x",var);

如果你愿意,你也可以用零填充数字,方法是 %0(total number of digits desired)x

例如:

int var = 0x123;
sprintf(hexStr,"0x%08x",var);

将导致 hexStr 被填充为“0x00000123”

关于objective-c - 将整数转换为十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16706846/

相关文章:

ios - CoreWLAN 或适用于 IOS 7 的任何其他公共(public) API

objective-c - Objective-C,NSThread分离与performSelectorInBackground

c - 单链单词列表

c++ - 任何用于 RPC over pipes/internal linux sockets 的开源 C/C++ 库/框架?

ios - 使用自动布局在 UITableView 上固定宽度不符合预期

objective-c - 来自 Clang 的 "Leak of returned object"是什么意思?

iphone - 我怎样才能在一个命令中更改所有标签字体

c - 为什么下面的代码中有竞争条件

c - __USE_MISC 宏的用途是什么?

c - C 中的简单字数统计