【问题标题】:How do I convert a DWORD to HEX如何将 DWORD 转换为 HEX
【发布时间】:2012-05-20 08:56:04
【问题描述】:

我目前正在使用 C Builder:

DWORD finalAddress = 0xFFFFFFFF;
TListItem *ListIt;
ListIt->Caption = finalAddress;

这将输出: 4294967295(12 月为 0xFFFFFFFF)

我希望它显示 0xFFFFFFFF。

我该怎么做?

【问题讨论】:

    标签: c hex dword


    【解决方案1】:

    假设你可以访问 C++ 标准库,试试这个:

    #include <sstream>
    #include <iostream>
    #include <string>
    
    std::ostringstream ss;
    ss << std::hex << finalAddress;
    
    AnsiString ansiHex = AnsiString (ss.str().c_str());
    ListIt->Caption = ansiHex;
    

    最后一个任务可能不起作用 - 我无权访问 Embarcadero 的标题,所以我不知道 ListIt-&gt;Caption 的类型是什么。可能需要执行额外的转换。

    【讨论】:

    • 好多了!谢谢,但仍然会产生一个字符串,标题是 AnsiString,我如何进行转换?
    • @GuilhermeGarcia 我编辑了答案 - 我不确定它是否会起作用,但根据this forum post 它应该:)
    • 谢谢!!顺便说一句,这有效:ListIt->Caption = AnsiString(ss.str().c_str());
    • C中没有::运算符,
    • 我在问题中看不到任何 C++ 的痕迹。但我同意C标签是后来添加的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-01
    • 2016-03-23
    • 2019-06-04
    • 2014-03-01
    相关资源
    最近更新 更多