<div dir="ltr">Hola Óscar,<div class="gmail_extra"><br><div class="gmail_quote">2013/6/18 Oscar Aparicio Holgado <span dir="ltr"><<a href="mailto:pelucheloko@hotmail.com" target="_blank">pelucheloko@hotmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<div><div dir="ltr">Hola que tal.<div><br></div><div>Tengo este trozo de código:</div><div><br></div><div><div><font face="Courier New">vector<int> a;</font></div><div><font face="Courier New">    int numero;</font></div>
<div><font face="Courier New">    cout << "Entra numeros (usa | para parar de meter numeros) ";</font></div><div><font face="Courier New">    while (cin >> numero) a.push_back(numero);</font></div><div>
<font face="Courier New"><br></font></div><div><font face="Courier New">    cout << "Entra cuantos numeros de los introducidos quieres sumar. ";</font></div><div><font face="Courier New">    int cuantos;</font></div>
<div><font face="Courier New">    cin >> cuantos;</font></div></div><div><font face="Courier New"><br></font></div><div><div>La cosa es que cuando le doy a ejecutar después de introducir el caracter | para cortar el while de la cuarta línea directamente termina y ya no se para en el cin segundo del código, ¿por qué? ¿cómo puedo solucionarlo?</div>
<div><br></div><div></div></div></div></div></blockquote></div></div><div class="gmail_extra"><br></div><div class="gmail_extra" style>Se sale del bucle 'while' porque el canal, 'cin', está en un estado de fallo (o fracaso). Esto se implementa en el objeto 'cin' activando un banderín interno.</div>
<div class="gmail_extra" style><br></div><div class="gmail_extra" style>Lo que tienes que hacer es despejar este banderín de fallo. Invoca la función miembro 'clear()'; esto es,</div><div class="gmail_extra" style>
<br></div><div class="gmail_extra" style>while( cin >> numero )</div><div class="gmail_extra" style>  a.push_back( numero );<br></div><div class="gmail_extra" style><br></div><div class="gmail_extra" style>cin.clear();</div>
<div class="gmail_extra" style><br></div><div class="gmail_extra" style><br></div><div class="gmail_extra" style>Espero haber aclarado la duda.</div><div class="gmail_extra"><br></div><div class="gmail_extra" style>Steven</div>
<div class="gmail_extra" style><br></div></div>