Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: prometheus48 en 18 Febrero 2012, 18:46 pm



Título: Cómo atrapo enter?
Publicado por: prometheus48 en 18 Febrero 2012, 18:46 pm
Hola,

He estado varios días intentandolo, pero nada.

Mi objetivo es como un intérprete de comandos que sale todo el rato ">>>" y si escriber say "Hola" ( eso lo sé hacer ) salga hola, pero el problema esque si el usuario pulsa la tecla enter vuelva a salir ">>>",

No tengo ni idea. Puedo hacer que si el usuario pulsa enter salga otra vez pero el problema esque solo puede aceptar un caracter yo no quiero que eso pase, ya que tambien quiero que si escriben say "..:" lo diga y claramente eso no es un caracter.

Salu2!


Título: Re: Cómo atrapo enter?
Publicado por: armizh en 18 Febrero 2012, 23:23 pm
Podrias especificar el lenguaje que estas utilizando y  mostrar el codigo que llevas... Saludos


Título: Re: Cómo atrapo enter?
Publicado por: prometheus48 en 19 Febrero 2012, 15:36 pm
Gracias,

Bueno lógicamente C++, ya que estamos en el foro de C/C++. Pero entiendo que me lo preguntes ya que también lo podría haber hecho en C.

El código lo intente, y lo guarde pero lo tengo guardado en Linu Mint. Y ahora estoy en Windows. Sólo necesito que me digais como hacerlo. No hace falta que me escribais código ( tambien me da igual si lo escribís ).

Bueno Gracias de todas formas, No se si alguien se habra dado cuanta pero, un ejemplo perfecto de lo que quiero hacer es el intérprete de python.

Salu2!


Título: Re: Cómo atrapo enter?
Publicado por: rir3760 en 19 Febrero 2012, 16:03 pm
Tienes que explicarte de una forma clara y precisa ya que una descripción como esta:
Mi objetivo es como un intérprete de comandos que sale todo el rato ">>>" y si escriber say "Hola" ( eso lo sé hacer ) salga hola, pero el problema esque si el usuario pulsa la tecla enter vuelva a salir ">>>"
Deja muchas dudas.

En el caso de C++ puedes leer la linea completa mediante getline para después procesarla. Detalles ya mas en especifico una vez nos des un ejemplo de la operación de tu programa.

Un saludo


Título: Re: Cómo atrapo enter?
Publicado por: armizh en 22 Febrero 2012, 22:54 pm
Ufff no revise esto, pero yo se como hacer eso, simplemente tienes que hacer que si el texto ingresado es nulo ('\0', 0, o "") no realices la escritura de ">>>". Ese es uno de los problemas que sortié mientras hacia mi SO xd.
Si estas utilizando los strings de C++ podras hacer la comparacion:
Código
  1. if(texto=="")
  2.        return;
O lo que quieras que haga si el texto no es nada.

Saludos


Título: Re: Cómo atrapo enter?
Publicado por: Eternal Idol en 25 Febrero 2012, 23:05 pm
Las comparaciones en C/C++ se hacen con ==, eso seria una asignacion ...


Título: Re: Cómo atrapo enter?
Publicado por: armizh en 25 Febrero 2012, 23:45 pm
Las comparaciones en C/C++ se hacen con ==, eso seria una asignacion ...
Apppsssss... error mio, perdon. Inmediatamente lo arreglo.

Saludos