cin<<i;
怎么判断他是不是其他字符串之类;
cin<<i;
怎么判断他是不是其他字符串之类;
cin<<i;
怎么判断他是不是其他字符串之类
第一种:
int GetInt(int nNum)
{
while(1)
{
char szBuf[255] = {'\0'};
cin>>szBuf;
nNum = AtoI(szBuf);
if (-1 == nNum)
{
cout<<"输入了非法字符串,请输入整数"<<endl;
}
else
{
break;
}
}
return nNum;
}
int AtoI(const char *pStr)
{
int nI = 0;
int nJ = 1;
int nA = 0;
for (;nI < StrLen(pStr);nI++)
{
if ('0' > pStr[nI] || '9' < pStr[nI])
{
return -1;
}
}
for (int nK = StrLen(pStr) - 1;nK >= 0;nK--)
{
nA += (pStr[nK] - '0') * nJ;
nJ *= 10;
}
return nA;
}
int StrLen(const char *pStr)
{
int nI = 0;
while ('\0' != pStr[nI])
{
nI++;
}
return nI;
}
第二种:
int num;
cin>>num;
if(cin.fail())
{
//not a number;
}
else //a number
第三种:
C++中有自带的方法isdigit(c)
先都cin>> 到一个字符串中 一位位判断是否为数字 如果是就转为数字