【发布时间】:2018-07-14 20:32:04
【问题描述】:
我对 C 很陌生。 我想将十六进制数字的字符串表示形式转换为实际的十六进制数字?
#include <stdio.h>
int main()
{
char buf[8] = "410C0000";
printf("%s\n",buf);
return 0;
}
我想分解字符串并将其转换为 4 个单独的十六进制数字。 我可以进一步处理以进行计算:
0x41 0x0C 0x00 0x00
【问题讨论】:
-
buf- 大小为 8 - 将不包含以'\0'结尾的字符串。如果您也想将buf用作字符串,请编写char buf[9],例如当写printf("%s\n",buf) -
什么是实际的 HEX 数字。如果我有一个 int 变量,我怎么知道它是十六进制、八进制、二进制还是十进制。或者可能只是数字。