Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/03/2012, 11:07
russellhoff
 
Fecha de Ingreso: noviembre-2010
Ubicación: laudio
Mensajes: 61
Antigüedad: 13 años, 6 meses
Puntos: 1
Información Crear etiquetas autoincrementales con memoria dinámica

Buenas tardes a tod@s!

Traigo una cuestión aquí, haber si alguien que sepa más sobre C y el manejo de la memoria dinámica me lo puede resolver...

Es para una asignatura de la universidad, y el tema es el siguiente:

Necesito crear en tiempo de ejecución etiquetas del estilo siguiente:

#etiq1
#etiq2
#etiq3
...
#etiqN

Es para la asignatura de compiladores, un programa que genera código intermedio y, por lo tanto, necesito de instrucciones condicionales y de salto --> por lo que se justifica la existencia de etiquetas (si_falso_ir_a, si_cierto_ir_a, etc).

El profesor nos ha dado pistas de cómo hacer dos funciones: una que cree las etiquetas char* etiqNew() y otra que las libere void etiqFree(char*).

Además, nos ha dicho que se tiene que hacer con memoria dinámica, obviamente, porque para cada llamada a la función etiqNew() nos tiene que devolver una etiqueta diferente y autoincremental: con las funciones malloc() y para liberarlas con free().

El caso es que no sé usar muy bien la memoria dinámica en C (utilicé ADA con listas ligadas para aprender la memoria dinámica).

Alguien me puede echar un cable? Muchísimas gracias!!!!! Y gracias a este foro también!