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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Bucle finalizado con enter
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: Bucle finalizado con enter  (Leído 18,762 veces)
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: Bucle finalizado con enter
« Respuesta #10 en: 12 Junio 2010, 20:58 pm »

Yo todavía no entiendo lo que el quiere. O sea, que el ciclo siga corriendo ininterrumpidamente hasta que se presione una tecla?, creo que hay que usar un thread no?

Podría usarse. Tal vez no sea estrictamente necesario, depende de cual sea la estructura de la aplicacion. De cualquier manera lo primero que hay que saber es sobre que sistema va a trabajar, y de ahí en mas utilizar las funciones especificas de ese sistema. Aunque también es recomendable utilizar alguna librería multi-plataforma como por ejemplo: boost que también viene con manejo de threads en caso que los necesite.

Saludos!


En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
O-LLOS-O


Desconectado Desconectado

Mensajes: 324


tengo 14 invitaciones para locker-z enviar mp


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #11 en: 12 Junio 2010, 21:52 pm »

Citar
Código
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. int a = cin.get();
  5.  
  6. int main(){
  7.  cout << "hoa" << endl;
  8.  if(!a) {
  9.    while(1){
  10.      cout << "hola" << endl;
  11.    }
  12.  }
  13. }
Una de las variaciones es esta, no entiendo pq no sale "hoa", hasta que se aprete enter, igual que nunca sale "hola".

Porque usando cin.get de esa forma, incluso si pones un 0, el valor del entero no sera 0, si no 48. Por lo tanto nunca cumplís la condición del if.


MMM pero pq se repite el if... si esta fuera del while :huh:, me siento muyyy tonto xdx

Saludos


En línea

bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #12 en: 12 Junio 2010, 22:09 pm »

el if no se repite, pero al entrar al bucle no hay nada que le haga salir y se queda pillado ahi.
En línea

Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: Bucle finalizado con enter
« Respuesta #13 en: 12 Junio 2010, 22:12 pm »

El if no se repite, y al while nunca entra, porque nunca se cumple la condición del if.

Saludos
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
Riki_89D


Desconectado Desconectado

Mensajes: 851


BCN CITY


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #14 en: 12 Junio 2010, 22:39 pm »

Y que tal con:
Código
  1. #include <C:\Dev-Cpp\All.h>
  2.  
  3. using namespace std;
  4.  
  5. int main(void)
  6. {
  7.   while(!GetAsyncKeyState(VK_RETURN))
  8. {
  9.  
  10.  
  11.                                   }
  12.                 return 0;
  13.                 }
  14.  

es eso? el bucle no para asta que se pulsa la tecla ENTER

A mi me funciona perrfectamente ^^

un saludo
« Última modificación: 12 Junio 2010, 22:52 pm por Riki_89D » En línea

Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: Bucle finalizado con enter
« Respuesta #15 en: 12 Junio 2010, 23:05 pm »

Esa podría ser una solución valida, pero depende si necesita parar el programa en el transcurso del ciclo o da lo mismo si solo puede hacerlo cuando la condición se evalúa. Dependería de lo que quiera hacer dentro del ciclo.
Igualmente ten en cuenta que esa es una función especifica de Windows, y todavía no sabes en que sistema esta trabajando cjordan.

Deberían esperar a que el usuario que inicio el hilo vuelva a postear, así explica un poco mas que es lo que quiere hacer y sobre que sistema.

Saludos
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
cjordan

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #16 en: 14 Junio 2010, 14:35 pm »

Es en Windows con Dev-C++. He encontrado una funcion que se llama kbhit que hace exactamente eso, mirar el buffer del teclado. Funciona perfectamente pero el problema esta en que tengo 3 whiles. Para el primero me funciona bien pero para los 2 siguientes no, ya que el buffer no esta vacio. Ya he hecho fflush(stdin) pero no sirve...
En línea

43H4FH44H45H4CH49H56H45H
Wiki

Desconectado Desconectado

Mensajes: 502



Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #17 en: 14 Junio 2010, 14:48 pm »

Utiliza la API de windows.
No uses Dev-C++.
VC++ seria lo mejor.
En línea


-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #18 en: 14 Junio 2010, 15:59 pm »

Y que tal con:
Código
  1. #include <C:\Dev-Cpp\All.h>
  2.  
  3. using namespace std;
  4.  
  5. int main(void)
  6. {
  7.   while(!GetAsyncKeyState(VK_RETURN))
  8. {
  9.  
  10.  
  11.                                   }
  12.                 return 0;
  13.                 }
  14.  

es eso? el bucle no para asta que se pulsa la tecla ENTER

A mi me funciona perrfectamente ^^

un saludo


ps si funcionaria...

la verdad no se mucho de C/C++ pero viendo el ejemplo de D4N9ER me parece que pudiera ser asi...

Código:
#include "stdafx.h"
 
 
int main()
{
while(getchar())
{
break;
}
return 0;
}

corriganme si me equivoco :P
En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
O-LLOS-O


Desconectado Desconectado

Mensajes: 324


tengo 14 invitaciones para locker-z enviar mp


Ver Perfil
Re: Bucle finalizado con enter
« Respuesta #19 en: 14 Junio 2010, 19:43 pm »

El problema de si se puede hacer esta solucionado, el otro problema es que creo que quiero que haya codigo en medio, y cuando se aprete, dando igual dode estes del codigo salgas, con un evento que salga del bucle
En línea

Páginas: 1 [2] 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Finalizado] Hackea a elhacker.net v2.0 (ganador: yoya) « 1 2 ... 14 15 »
Nivel Web
WHK 142 77,261 Último mensaje 25 Junio 2012, 01:10 am
por gilea
El estándar USB 3.1 ya ha sido finalizado
Noticias
wolfbcn 0 1,480 Último mensaje 4 Agosto 2013, 01:39 am
por wolfbcn
W3 da por finalizado HTML5
Noticias
dimitrix 0 1,711 Último mensaje 18 Julio 2014, 16:40 pm
por dimitrix
Carpeta FL - FINALIZADO
Windows
Zorronde 5 3,841 Último mensaje 27 Octubre 2015, 17:55 pm
por Zorronde
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines