在 C++ 中打印十六进制值
我正在尝试在 C++ 中打印整数的十六进制等效值,
int value=2;
cout<<hex<<value;
我得到 2 作为输出,我想要 0x00000002 作为输出(即使用非有效零), 有人可以帮我解决这个问题吗?
Possible Duplicate:
Converting an uint64 into a (full)hex string, C++
I am trying to print the hexadecimal equivalent of an integer in C++,
int value=2;
cout<<hex<<value;
I am getting 2 as output, i want 0x00000002 as output (i.e. with the non significant zeroes),
can someone please help me out with this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这更多的是一个格式问题。除了十六进制之外,您还想使用 setw 和 setfill,因为您希望左侧填充 0 和 0x 前缀。
This is more of a formatting problem. You want to use setw and setfill in addition to hex, since you want a the left padded with 0s and the 0x prefix.
你可以使用这个功能
you can use the function
使用以下内容:
Use the following: