Je suis en train d'essayer cette fonction pour retourner sans chiffres, espaces ou autres caractères et je suis censé utiliser la fonction .erase. Je comprends que ma boucle dépasse la portée, mais je n'ai aucune idée de comment la corriger et je suis bloqué sur cela depuis un certain temps. Si l'utilisateur tape "les chiens sont très amusants" et j'ai besoin que la fonction retourne et affiche "leschienssonttrèsamusants" Merci pour l'aide.
#include
#include
#include
using namespace std;
//fonction pour afficher la chaîne sans espaces, chiffres ou ponctuations
string alphabetOnly (string input){
int size;
int i= 0;
size = (int)input.size();
while (input[i] < size){
if (isalpha(input[i])){
i++;
}
else
input.erase(input[i]);
}
return input;
}
int main() {
string input;
cout << "Entrez une chaîne à tester: ";
getline(cin, input);
cout << "alphabetOnly: " << alphabetOnly(input) << endl;
}