繁体   English   中英

如何在C ++中将十六进制整数转换为字符串(用于html颜色)?

[英]How to Convert hexadecimal integer into a string in c++ (for html colors)?

Bonjourno,Bonsoir,Konbanwa,Ave [...]

我尝试将int转换为十六进制,然后转换为字符串以生成html颜色...

你知道这样做的方法吗?

我尝试了:

        int rouge=  0x0 ;    //red in french
        int vert=   0x0 ;    //green
        int bleu=   0xff;    //blue
        int couleur=0x0 ;    //color

        bleu*=256*256;
        vert*=256;

        couleur=rouge+vert+bleu; 

        cout<<"couleur"<<couleur<<endl;

        stringstream ss2;    // #include <sstream> if someone want to do it also ^^
        ss2 <<hex<<couleur; // convert  int to stringstream  works if decimal
        cout<<ss2<<hex<<endl;

        string string_couleur = ss2.str();  // convert streamstring to string

        for (int nombre_0_devant=6-string_couleur.size(); nombre_0_devant>0;nombre_0_devant--) string_couleur="0"+string_couleur;  // just a line to add needed 0   ff --> 0000ff

        html+="#"+string_couleur+">";

它给:

0x28f738       

:(

感谢您的阅读!

抱歉

cout<<"string"<<string_couleur<<"\n";

作品!

我没有打印好变量。

我不会删除该问题,因为它可以帮助某人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM