Ejemplos de uso de asignación de memoria dinámica en lenguaje C
1. Función malloc: Su función es asignar un espacio continuo de longitud 1 en el área de almacenamiento de memoria dinámica. Su parámetro es un entero sin signo y el valor de retorno es un puntero a la dirección inicial del área de almacenamiento continuo asignada.
2. Función gratuita: debido a que el área de memoria siempre es limitada, no se puede asignar sin límite y un programa debe intentar ahorrar recursos, por lo que cuando el área de memoria asignada no se utiliza, es necesario hacerlo. lanzado, para que otras variables o programas puedan usarlo. Esto es lo que hace la función gratuita.
3. Función calloc: Su función es asignar un espacio continuo de n longitud en el área de almacenamiento dinámico en la memoria. Esta función devuelve un puntero al comienzo del área asignada, o NULL si la asignación no tuvo éxito.
Extensión:
Operador de función:
nuevo
El operador nuevo se utiliza para solicitar espacio de almacenamiento dinámico del sistema y agregar el An La dirección se utiliza como resultado de la operación y su forma de uso es la siguiente:
Variable de puntero=nuevo tipo de datos;
Ejemplo:
int *p=nuevo int
La función de esta declaración es usar new para solicitar una variable de tipo int (4 bytes) de la memoria y asignar la primera dirección de la variable a la variable de puntero p.
El valor inicial de una variable creada por new es arbitrario y también se puede inicializar al mismo tiempo que se usa new para asignar memoria. Su forma de uso es:
Variable puntero = nuevo tipo de datos (valor inicial).
eliminar
La memoria del montón se puede asignar según demanda y los requisitos de memoria del programa pueden cambiar en cualquier momento. A veces, es posible que el espacio de memoria asignado por new ya no sea necesario cuando el programa se está ejecutando y el programa aún no ha terminado de ejecutarse, por lo que es necesario liberar el espacio de memoria previamente ocupado en la memoria del montón para que pueda reasignarse a otros. partes del programa más adelante. El operador eliminar se utiliza para liberar el espacio de memoria asignado por new y eliminar los objetos creados. Su formato de uso es:
eliminar variable de puntero
La variable de puntero guarda la memoria asignada por. nueva Primera dirección.
Referencia: Enciclopedia Baidu: Asignación de memoria dinámica