我怎么能转换成十六进制数为二进制的C ++? [英] How can I convert hexadecimal numbers to binary in C++?

查看:109
本文介绍了我怎么能转换成十六进制数为二进制的C ++?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开始C ++类,想转换成十六进制再presentations和二进制之间的信件。我可以管理使用打印出的十六进制数字:

I am taking a beginning C++ class, and would like to convert letters between hex representations and binary. I can manage to print out the hex numbers using:

for(char c = 'a'; c <= 'z'; c++){
    cout << hex << (int)c;
}

但我不能对二进制这样做。没有的std ::斌,我可以使用的十进制数转换为二进制。

But I can't do the same for binary. There is no std::bin that I can use to convert the decimal numbers to binary.

推荐答案

像这样:

for(char c = 'a'; c <= 'z'; c++){
        std::bitset<sizeof(char) * CHAR_BIT> binary(c); //sizeof() returns bytes, not bits!
        std::cout << "Letter: " << c << "\t";
        std::cout << "Hex: " << std::hex << (int)c << "\t";
        std::cout << "Binary: " << binary << std::endl;
    }

这篇关于我怎么能转换成十六进制数为二进制的C ++?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆