• Lunes 16 de Diciembre de 2024, 04:37

Autor Tema:  Fflush()  (Leído 935 veces)

Rataman

  • Miembro activo
  • **
  • Mensajes: 45
    • Ver Perfil
Fflush()
« en: Martes 4 de Mayo de 2004, 18:36 »
0
Mi problema es el siguiente: Al ejecutar muchas veces una misma funcion, me da un error de memoria, y creo k es por espacio insuficiente de pila, ¿no hay alguna funcion k libere dicho espacio?

Creo k con fflush() se puede pero no encuentro el parametro k hay k introducir para utilizarla de forma similar al fflush(stdin)

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Fflush()
« Respuesta #1 en: Martes 4 de Mayo de 2004, 20:24 »
0
no,
lo de liberar la memoria loo debes hacer tu,
cada vez que dejes de utilizar un espacio de memoria , por ejemplo uno llmado con malloc, deberas liberarlo:

ejemplo
Código: Text
  1.  
  2.  
  3. void memp()
  4. {
  5.   char *p;
  6.   p=(char *)malloc(50);
  7.   ...
  8.   ...
  9.   ..
  10.   ..
  11.   ..
  12.   ..
  13.  
  14. }
  15.  
  16.  
si lo dejas asi cada vez que utilices memp() estaras reservando un bloque de memoria diferente sin liberarlo nunca.. pero asi esto se soluciona:

Código: Text
  1.  
  2.  
  3. void memp()
  4. {
  5.   char *p;
  6.   p=(char *)malloc(50);
  7.   ...
  8.   ...
  9.   ..
  10.   ..
  11.   ..
  12.   ..
  13.   free(p);
  14. }
  15.  
  16.  
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

Rataman

  • Miembro activo
  • **
  • Mensajes: 45
    • Ver Perfil
Re: Fflush()
« Respuesta #2 en: Martes 4 de Mayo de 2004, 21:43 »
0
Gracias, ya he solucionado mi problema   :lol: