Hola mis amigos soy nuevo en este foro...estuve buscando en internet sobre como leer cadenas de texto largas y con espacios
Estoy aprendiendo programacion y quisiera que me ayuden con esta duda:
#include <iostream>
using namespace std;
int main(){
string palabra;
int n;cin>>n;
while(n--){
getline(cin,palabra);
for (int i = palabra.length()-1; i >=0 ; i--)
{
cout<<palabra;
}
cout<<'\n';
}
return 0;
}
la duda es la siguiente no entiendo porque para un n=3
entra al ciclo y solo me hace el proceso 2 veces luego se sale
como podria solucionarlo...?
se agradece su ayuda de antemano!!
· Los códigos deben ir en etiquetas GeSHi
· No hagas doble post
· No revivas temas viejos
>aquí las reglas del foro (http://foro.elhacker.net/reglas.htm)
-Engel Lex
Respuesta corta: Si vas a usar getline después de un "cin >> X", pon después del "cin >> X" un "cin.ignore()".
Respuesta larga: "cin >> X" deja en el el stream de entrada el salto de línea que envías al pulsar ENTER. Como deja ese caracter, el próximo getline lo va a leer, con lo cual ya no va a pedirte entrada.