📄 isnumber.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "IsNumber.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
AnsiString IsNumber(AnsiString Str)
{//判断Str里是否有不是'0'~'9'的字符,
//如果有将其删除并返回删除后的Str
char c;
bool bDot;
bool bPlus;
bool bMinu;
bool bDel;
int len;
AnsiString strTemp;
len=Str.Length();;
if(Str.IsEmpty())
{
//Str="0";
return Str;
}
bDot = false;
bPlus = false;
bMinu = false;
bDel = false;
strTemp = "";
for(int i=0;i<len;i++)
{
c=Str.c_str()[i];
bDel = false;
switch(c)
{
case '0': case '1': case '2': case '3':
case '4': case '5': case '6': case '7':
case '8': case '9': break;
case '.':
if(bDot) bDel = true;
else bDot = true;
break;
case '+':
if(bPlus || i != 0) bDel = true;
else bPlus = true;
break;
case '-':
if(bMinu || i != 0) bDel = true;
else bMinu = true;
break;
default: bDel = true; break;
}
if(bDel)
{
//Str.Delete(i+1,1);
MessageBeep(0xffffffff);
}
else
{
strTemp += c;
}
}
return strTemp;
}
bool IsFloat(AnsiString Str)
{
/*
float fVal;
if(Str == IsNumber(Str) && Str != "") return true;
else return false;
*/
float fVal;
try
{
if(Str == "") return false;
if(Str == ".") return false;
if(Str == "+.") return false;
if(Str == "-.") return false;
fVal = Str.ToDouble();
}
catch(...)
{
return false;
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -