<div dir="ltr"><div>Hola, esta es la función:<br><br><pre class="gmail-aLF-aPX-K0-aPE gmail-aLF-aPX-aLK-ayr-auR">pieza pedir_pieza ( )
{
        pieza p;
        
        getline(cin, p.nombre);
        do
        {
                cin >> p.unidades;
        }while ( p.unidades < 0);
        do 
        {
                cin >> p.precio;
        }while (p.precio < 0);       
        cin.ignore();
        
        return p;
}</pre><br></div>Como ves después de ingresar el nombre entra al bucle do-while cuya condición de salida es que el dato ingresado sea mayor o igual que 0. Ocurre lo mismo en el segundo do-while, ¿es este el bucle infinito del que hablas?<br><br><br></div><div class="gmail_extra"><br><div class="gmail_quote">El 17 de diciembre de 2016, 7:42, Ana Pallares Vilar <span dir="ltr"><<a href="mailto:anapallares20@gmail.com" target="_blank">anapallares20@gmail.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hola buenos días, me podrían decir donde esta  el fallo en este programa por favor.<div>Se trata de un menú donde puedes mostrar las piezas de un almacén, añadir una nueva y guardar los cambios.</div><div>Mi problema es que al añadir pieza me permite escribir el nombre de esta pero después me sale un bucle infinito y no se como cambiarlo para que no salga eso.</div><div>Gracias.</div></div>
<br>______________________________<wbr>_________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" rel="noreferrer" target="_blank">http://listas.conclase.net/<wbr>mailman/listinfo/cconclase_<wbr>listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" rel="noreferrer" target="_blank">http://listas.conclase.net/<wbr>index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br></div>