martes, 2 de junio de 2015

MEMORIAS DINAMICAS: NEW.



El operador new proporciona espacio de almacenamiento persistente, similar pero superior a la función de Librería Estándar malloc. Este operador permite crear un objeto de cualquier tipo, incluyendo tipos definidos por el usuario, y devuelve un puntero (del tipo adecuado) al objeto creado.


FORMA DE DECLARA NEW:

Punto *p;
 p = new Punto[100];    ----------------> se separa 100 espacios en la memoria para 100 datos


CODIGO NEW:

#include <stdio.h>
#include <alloc.h>    ----------------------------> Librerías pertinentes.
#include <string.h>
#include <process.h>

void main(void){
char *cad;
cad = new char(10);   -->al puntero cad le asignamos dinamicamente espacio para contener                                               caracteres.

if(cad == NULL){      -------------------> Si cumple esta condición es por que no hay espacio.
printf("no hay memoria suficiente para asignar bufer\n");
exit(1);//fiin del programa si fuera de memoria
}
else{  ------------> si no, se procede con el programa.
strcpy(cad, "hola");-------> Se copia la palabra "hola" en la cadena con la función strcpy.
printf(" la cadena es %s \n",cad);  -------------> Impresión de la cadena.
free(cad);   ---------------> Con la función free liberamos la memoria.
}

getchar();
printf(" la cadena es %s\n",cad); ---------------> imprimimos cad, pero esta vez sin su contenido
getchar();                                                        anterior, ya que se libero la memoria.
}


SIGUIENDO ESTE LINK PODRAS DESCARGAR EL CODIGO.



VIDEO TUTORIAL NEW:




Esperamos que hayan entendido este tema!!! :D


























No hay comentarios:

Publicar un comentario