函数原型:
int __fastcall StrToIntDef(const UnicodeString S, int Default);
头文件:
#include <System.SysUtils.hpp> (XE2 之后),#include <SysUtils.hpp> (XE 之前)
参数:
S: 字符串,如果以 L"0x" 或 L"0X" 开头,认为是十六进制字符串,如果不是 L"0x" 或 L"0X" 开头的字符串,认为是十进制。
Default: 默认值,整数。如果字符串 S 不是有效的整数,函数返回这个默认值。
返回值:
转换之后的整数。
如果转换失败,会返回参数 Default 默认值,不抛出异常。
例1:字符串转为整数
int i = StrToIntDef(Edit1->Text, 0); |
例2:十六进制转十进制
int i = StrToIntDef(L"0x" + Edit1->Text, 0); // 前进加上 L"0x" 认为 Edit1 里面是十六进制
Edit2->Text = IntToStr(i); // 转为十进制字符串,放在 Edit2 里面 |
相关链接:
• atoi • atol • _atoi64 • strtol • strtoll • strtoul • strtoull
• itoa • ltoa • ultoa • _i64toa • _ui64toa
• IntToStr • UIntToStr • IntToHex
• StrToInt • StrToIntDef • StrToInt64 • StrToInt64Def • StrToUInt64 • StrToUInt64Def
• EnumToStr • StrToEnum
|