因此,我编写了一个函数来检查字符串是否具有数字字符。即使一组数字中只有一个字母,也应返回false。但是事实并非如此。我不确定循环在C ++中的工作方式是否不同。
bool isStringAValidNumber(string str)
{
for (int i = 0; i < str.length(); i++) {
if (!isdigit(str[i])) {
return false;
break;
}
}
return true;
}
答案 0 :(得分:1)
#include <iostream>
#include <string>
using namespace std;
int isStringAValidNumber(string str)
{
for (int i = 0; i < str.length(); i++) {
if (!isdigit(str[i])) {
return 0;
break;
}
}
return 1;
}
int main()
{
cout << isStringAValidNumber("1sd2345");
cout << endl;
cout << isStringAValidNumber("1s2345");
cout << endl;
cout << isStringAValidNumber("12345");
}
工作正常...
返回是:
0
0
1