Ejemplo 1: #include<stdio.h> #include<stdlib.h> #include<string.h> void main() { char nombre[21], *p; int longitud; printf("\nIngrese Nombre: "); scanf("%s", &nombre); longitud= strlen(nombre); //Calcula la longitud del nombre p= (char *)malloc((longitud+1)*sizeof(char)); //Devuelve un puntero que asigna a una seccion de memoria strcpy(p, nombre); //Copia el nombre en nueva area de memoria printf("p---> %s ", p); //Muestra que el nombre ahora esta en P free(p); //Libera memoria apuntada por p system("pause"); } Ejemplo 2: #include<stdio.h> #include<stdlib.h> void main() { int *p, nelem, i; printf("\n¿Cuantos elementos va Ingresar?"); scanf("%d", &nelem); p= (int *)malloc(nelem*sizeof(int)); //Memoria para N elementos for (i=0; i<nelem; i++) { printf("\nElemento[%d]: ", i+1); scanf("%d", (p+i)); } printf("\n>>>ELEMENTOS DEL ARREGLOS<<<\n"); for(i=0; i<nelem;i++) { printf("\n%d", *(p+i)); } free(p); //Libera memoria apuntada por P system("pause"); } Ejemplo 3: #include<stdio.h> #include<stdlib.h> void main() { float *p; int nelem, i; printf("\n¿Cuantos elementos va Ingresar?"); scanf("%d", &nelem); p= (float *)malloc(nelem*sizeof(float)); //Memoria para N elementos for (i=0; i<nelem; i++) { printf("\nElemento[%d]: ", i+1); scanf("%f", (p+i)); } printf("\n>>>ELEMENTOS DEL ARREGLOS<<<\n"); for(i=0; i<nelem;i++) { printf("\n%f", *(p+i)); } free(p); //Libera memoria apuntada por P system("pause"); }