我只使用C#发现有关此主题的信息,并且使用的是C++。 希望你能帮助我。验证一个字符串中是否只包含C++中的字母
我的代码:
#include <iostream>
#include <fstream> // Librería para el manejo de archivos
#include <string> // Librería para el manejo de strings
#include <stdlib.h> // Librería para el uso de system("cls");
int main()
{
//Variables
string NombreJugador;
/* Content
------------------------------------------------------------------------*/
do
{
cout << "Your name: ";
cin >> NombreJugador;
} while(ValidarNombreJugador(NombreJugador));
return 0;
}
/* Function
------------------------------------------------------------------------*/
int ValidarNombreJugador(string NombreJugador)
{
int Numero;
Numero = atoi(NombreJugador.c_str());
if (Numero!=0)
{
cout << "No puede ingresar numeros, solo letras." << endl;
return 1;
}
else
{
cout << "Perfecto, tu nombre no tiene numeros." << endl;
return 0;
}
}
我已经在谷歌发现这种方式来验证该名称只能包含字母和数字没有。
问题是,如果你输入“0”,它将它识别为字母,意思是,它返回true。
我应该怎么做才能正确验证字符串只有字母而不是数字?
我是新的使用字符串的方式。
也只测试你的输入不能以数字开头,如果它包含的数字中间或末尾处它通过测试。 – SHR
“只有字母”和“无数字”是不同的东西。你真的想要测试哪一个? –