Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Orcbull en 2 Diciembre 2012, 13:09 pm



Título: C++ Duda: [Cin] No mostrar el valor introducido en pantalla
Publicado por: Orcbull en 2 Diciembre 2012, 13:09 pm
Cuando usas

cin >> variable;

e introduces el dato, éste queda escrito en pantalla.

¿Hay algún modo de que no se muestre una vez haya sido introducido?


Título: Re: C++ Duda: [Cin] No mostrar el valor introducido en pantalla
Publicado por: avesudra en 2 Diciembre 2012, 13:22 pm
Borrando todo lo que está en consola después de introducirlo con:
Código
  1. //Si estás en Linux
  2. system("clear");
  3. //Si estás en Windows
  4. system("cls");
Este solo vale para cout:
Código
  1. cout<<"\b\b\b";//esto es para retrasar el cursor 3 posiciones.
  2. cout<<"   ";//esto son 3 espacios para borrar lo anterior.
  3. cout<<"\b\b\b";//vuelves a retrasar el cursor 3 posiciones para escribir.
Para esto último puedes usar esta función que acabo de hacer:
Código
  1. void clearCharacters(unsigned int numcharacters)
  2. {
  3.    for(register int i=numcharacters; i != 0 ;--i)
  4.    {
  5.        cout<<"\b";
  6.    }
  7.    for(register int i=numcharacters; i != 0 ;--i)
  8.    {
  9.        cout<<" ";
  10.    }
  11.    for(register int i=numcharacters; i != 0 ;--i)
  12.    {
  13.        cout<<"\b";
  14.    }
  15. }


Título: Re: C++ Duda: [Cin] No mostrar el valor introducido en pantalla
Publicado por: Orcbull en 2 Diciembre 2012, 13:58 pm
Gracias por responder :D .

Funciona.