elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  duda c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda c++  (Leído 1,812 veces)
ankora45

Desconectado Desconectado

Mensajes: 52



Ver Perfil
duda c++
« en: 2 Octubre 2012, 11:58 am »

Hola veran me gustaria saber como hacer que cuando se le pida un numero al usuario para acceder a un menu no tenga que escribirlo, si no solo pulsarlo ej:
Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.    int num;
  8.    cout<<"pulse 1 para acceder a menu1"<<endl;
  9.    cout<<"pulse 2 para acceder a menu2"<<endl;
  10.    cin>>num; /* aqui lee la variable pero tienes que escribirla y pulsar intro
  11.                  y yo quiero que lo coja directamente al pulsar el numero en el
  12.                  teclado */
  13.    switch(num)
  14.    {
  15.        case '1': cout<<"ha accedido al menu 1"<<endl;
  16.        break;
  17.        case '2': cout<<"ha accedido al menu 2"<<endl;
  18.        break;
  19.    }
  20.    return 0;
  21. }

no se si sera con (stdin) y la biblioteca cstdio espero respuesta :D


En línea

Hay dos cosas infinitas en este mundo, el universo y la estupidez humana, y de la primera no estoy muy seguro
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: duda c++
« Respuesta #1 en: 2 Octubre 2012, 13:47 pm »

hacer que cuando se le pida un numero al usuario para acceder a un menu no tenga que escribirlo, si no solo pulsarlo
Una forma es mediante el uso de la función getch de la librería coni.h, incluida ya en Cod::Blocks o Dev.C++ -no hablo de la de borland-. NO es la mejor o más portable para otros compiladores, pero hace lo que quieres
Código
  1. #include <iostream>
  2. #include<conio.h>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.    cout<<"pulse 1 para acceder a menu1"<<endl;
  8.    cout<<"pulse 2 para acceder a menu2"<<endl;
  9.    switch(getch ())
  10.        {
  11.            case '1': cout<<"ha accedido al menu 1"<<endl;
  12.            break;
  13.            case '2': cout<<"ha accedido al menu 2"<<endl;
  14.            break;
  15.        }
  16.    return 0;
  17. }
  18.  
Yo también quedo a la espera de otras soluciones sin getch.
Saludos!


En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: duda c++
« Respuesta #2 en: 2 Octubre 2012, 15:33 pm »

Utilizando solo C o C++ no es posible. La única solución es utilizar una biblioteca de terceros (como en tu ejemplo) o bien el API del sistema operativo (Mas información en MSDN: Consoles).

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: duda c++
« Respuesta #3 en: 2 Octubre 2012, 15:53 pm »

Utilizando solo C o C++ no es posible. La única solución es utilizar una biblioteca de terceros (como en tu ejemplo) o bien el API del sistema operativo (Mas información en MSDN: Consoles).

Un saludo

Para Linux/Unix: tengo entendido que es termios.h.

Saludos.
En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pequeña duda con un comando batch (NUEVA DUDA RELACIONADA)
Scripting
revenge1252 9 9,738 Último mensaje 13 Febrero 2008, 21:41 pm
por revenge1252
Duda duda y duda de Metasploit
Bugs y Exploits
huber_nomas 4 5,775 Último mensaje 17 Febrero 2012, 14:00 pm
por MauroMasciar
Duda
Programación C/C++
djdac3 3 1,911 Último mensaje 16 Septiembre 2012, 03:08 am
por avesudra
DUda c++
Programación C/C++
Stakewinner00 4 2,528 Último mensaje 18 Septiembre 2012, 15:09 pm
por Stakewinner00
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines