gpt4 book ai didi

将字符串转换为十六进制

转载 作者:行者123 更新时间:2023-11-30 18:01:42 26 4
gpt4 key购买 nike

我有一个字符串,其中包含 0111111100000000000000000000101

我想将其转换为十六进制,所以我使用了下面的代码

    int assembledHex;
sscanf(buffer, "%x", &assembledHex);
printf("this is the assembled hex %x\n",assembledHex);

但是当我打印它时,它给了我 101。我认为 sscanf 可以从字符串转换为十六进制,我做错了什么以及如何修复它。我想要的结果是0x3F800005

最佳答案

这没有检查或任何东西,而且也很慢,但它是一个快速启动:

unsigned int bin_to_int(const char *s) {
int i;
unsigned int result;

result = 0;

if (s[0] == '1') result++;

for (i = 1; i < strlen(s); i++) {
result <<= 1;

if (s[i] == '1') {
result++;
}
}

return result;
}

关于将字符串转换为十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9654517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com