• Martes 14 de Abril de 2026, 09:36

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - LauraMadrid

Páginas: [1]
1
C/C++ / ¿Cómo puedo interrumpir a Sleep()?
« en: Viernes 27 de Noviembre de 2009, 11:19 »
La cosa es muy simple, pero no doy con la solución. En mi programa tengo un código que se ejecuta cada x segundos. Entonces al terminar de ejecutarse uso un Sleep para que espere lo que falte hasta el próximo periodo. Pero esto hace que el programa se bloquee completamente. Me gustaría poner un botón para detener este ciclo en cualquier momento, para lo cual necesito algo que interrumpa a Sleep. ¿Cómo interrumpir a Sleep?
¡¡Gracias!!
Laura

2
C/C++ / Re: ¿Cómo crear variables de forma dinámica?
« en: Miércoles 25 de Noviembre de 2009, 11:19 »
Pues sí, es lo más fácil. Gracias ;-)

3
C/C++ / ¿Cómo crear variables de forma dinámica?
« en: Lunes 23 de Noviembre de 2009, 18:17 »
¡Hola! A ver si me podéis ayudar con una cosa muy simple que no sé hacer. No sé muy bien cómo se llama lo que quiero hacer, así  que lo explico rápido:

Voy a recibir un entero en una variable y ese entero va a ser el número de variables que quiero crear. Por ejemplo, si mi variable vale 3, quiero que se me creen "vble1", "vble2" y "vble3".

Tiene pinta de ser muy simple, pero ahora mismo no caigo...
¡Gracias!
Laura

4
C/C++ / Re: ¿Cómo ejecutar sentencias concurrentes en C++?
« en: Lunes 23 de Noviembre de 2009, 18:06 »
Efectivamente, era con hilos. Aquí me respondo, por si a alguien le es de utilidad porque es un ejemplo muy muy simple de hilos, justo lo que iba buscando, ya que no necesitaba acceder a variables compartidas ni nada de eso, solo que se ejecutaran en paralelo dos sentencias para que una no espera a que terminara la otra:

Código: Text
  1.  
  2. #include <windows.h>
  3.  
  4. DWORD WINAPI Hilo(LPVOID lpParam)
  5. {
  6.   MessageBox(0, "Mensaje", "Desde un hilo", 0);
  7.   return 0;
  8. }
  9.  
  10. void main()
  11. {
  12.   HANDLE hHilo = CreateThread(NULL, 0, Hilo, NULL, 0, NULL);
  13.   WaitForSingleObject(hHilo, INFINITE);
  14.   CloseHandle(hHilo);
  15.   MessageBox(0, "Listo", "Desde main", 0);
  16. }
  17.  
  18.  

Pero yo además necesitaba pasarle algunas variables al hilo desde el main y para eso me ha servido el siguiente código que copio aquí también. Es básicamente el mismo código pero esta vez pasándole las variables al hilo:

Primero se define la estructura que contendrá las las variables a pasar al hilo:
Código: Text
  1.  
  2. struct ThreadParams
  3. {
  4.    char character;
  5.    int border;
  6. };
  7.  
  8.  

Entonces se llama al hilo así
Código: Text
  1.  
  2. struct ThreadParams *params = (struct ThreadParams *)malloc(sizeof (struct ThreadParams));
  3. params->border = 8675309;
  4.  
  5. hThread = CreateThread (NULL, 0, ThreadProc, (LPVOID)(params), 0, &dwThreadID);
  6.  
  7.  

Y el código del hilo:
Código: Text
  1.  
  2.     DWORD WINAPI ThreadProc ( LPVOID pvoid )
  3.     {
  4.         struct ThreadParams *params = (struct ThreadParams *)pvoid;
  5.    
  6.         int temp;
  7.         temp=params->border;
  8.  
  9.         // Free the parameters
  10.         free(lpvoid);
  11.     return 0
  12.     }
  13.  

5
C/C++ / ¿Cómo ejecutar sentencias concurrentes en C++?
« en: Jueves 12 de Noviembre de 2009, 16:01 »
¡Hola! Necesito un poco de ayuda porque estoy un poco perdida con un tema. En mi programa llego a un punto en el que tengo que ejecutar dos sentencias, pero cada una tarda un poco y deberían ejecutarse más o menos a la vez. ¿¿Hay alguna manera de ejecutarlas de forma concurrente o paralela??
¡¡Gracias!!
Laura

6
C/C++ / Re: Pregunta tonta: Cómo sacar el valor de una vble por pantalla
« en: Jueves 29 de Octubre de 2009, 17:22 »
Hola, ¡gracias por responder! Lo he probado pero no compila:

C:SampleRelCtrlComSettingDlg.cpp(111) : error C2660: 'MessageBox' : function does not take 4 parameters

EI: juntando mensajes.

Qué tonta soy. Me respondo yo misma: En tu código solo había que cambiar "MessageBox(0, cad, cad, 0);" por "MessageBox(cad);" y ya funciona. ¡¡¡Gracias!!!

7
C/C++ / Pregunta tonta: Cómo sacar el valor de una vble por pantalla
« en: Jueves 29 de Octubre de 2009, 17:11 »
Hola, quería haceros una pregunta muy tonta pero que me está volviendo loca. Lo único que quiero es sacar el valor de una variable por pantalla pero no hay manera. Estoy programando en Visual C++ una aplicación de ventanas.

El printf("Hola"); lo compila sin quejarse pero luego no aparece nada. El caso es que no sé dónde debería aparecer porque estoy programando una aplicación de ventanas (no hay consola).

Lo de cout <<"Hola "; no funciona por más que declaro #include <iostream.h>. Pero es lo mismo, tampoco hay consola, así que no sé por dónde saldría.

Lo que sí me funciona es MessageBox( "Hola" ); que me abre una ventanita en la aplicación en la que aparece "Hola", pero solo funciona con cadenas y yo quiero mostrar una variable numérica. He probado a hacer un casting pero nunca me enseña nada con sentido.

¿¿¿Qué puedo hacer??? ¡Gracias!
Laura.

Páginas: [1]