StrToUInt64Def - C++ Builder

C++ Builder 参考手册System::SysutilsStrToUInt64Def


字符串转无符号64位整数值

头文件:#include <System.SysUtils.hpp>
命名空间:System::Sysutils
函数原型:

unsigned __int64 __fastcall StrToUInt64Def(const System::UnicodeString S, const unsigned __int64 Default);

参数:

  • S:字符串;
  • Default:默认值;

返回值:

  • 无符号64位整数类型数值,如果转换失败,返回参数 Default 的值;
  • 字符串可以是十进制或十六进制数据:以 "0x" 开头认为是十六进制数据,否则认为是十进制,不支持八进制及其他进制;
  • 函数 StrToUInt64、StrToUInt64Def 和 TryStrToUInt64 的区别:
    • StrToUInt64 转换失败抛出异常;
    • StrToUInt64Def 转换失败返回默认值;
    • TryStrToUInt64 转换结果通过参数返回,函数返回值返回是否转换成功。

例:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    Memo1->Lines->Add(StrToUInt64Def(L"123",0));
    Memo1->Lines->Add(StrToUInt64Def(L"0123",0));
    Memo1->Lines->Add(StrToUInt64Def(L"0x123",0));
    Memo1->Lines->Add(StrToUInt64Def(L"0xABCDE",0));
    Memo1->Lines->Add(StrToUInt64Def(L"0xFFFFFFFF",0));
    Memo1->Lines->Add(StrToUInt64Def(L"0xFFFFFFFFFFFFFFFF",0));
    Memo1->Lines->Add(StrToUInt64Def(L"123H",0));
}

运行结果:最后一个由于含有字母 'H' 转换失败,返回默认值 0 (函数第二个参数的值),其他都转换成功

运行结果

相关:


C++ Builder 参考手册System::SysutilsStrToUInt64Def

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容