¿Qué es la función calloc() en C++?

Que Es La Funcion Calloc En C



Comprender los diversos tipos de funciones de asignación de memoria es fundamental cuando se trabaja en C++. El llamar() es una de esas funciones que se usa con frecuencia en C++ para asignar memoria dinámicamente. Si bien su uso puede parecer simple, hay ciertos aspectos importantes a tener en cuenta al usar llamar() .

En este artículo, veremos la llamar() función y cómo se puede utilizar con éxito en C++.

¿Qué es la función calloc()?

El función calloc() es una función de asignación de memoria en programación C++. Se utiliza para asignar un bloque de memoria para una matriz o conjunto de variables. El llamar() la función es como la malloc() función, excepto que también establece la memoria asignada a ceros inicialmente. Esto asegura que la memoria asignada se inicialice en un valor conocido, lo cual es útil cuando se trabaja con matrices y estructuras.







La sintaxis para el función calloc() es como sigue:



vacío * llamar ( talla_t nombre , talla_t tamaño )

La función toma dos argumentos: nombre y tamaño . El nombre El argumento especifica el número de elementos en la matriz que se asigna, mientras que el tamaño El argumento especifica el tamaño de cada elemento en bytes.



Además, si la asignación de memoria tiene éxito, el llamar() La función devuelve un puntero nulo, de lo contrario, devuelve un puntero al comienzo del bloque de memoria recién formado. Para evitar pérdidas de memoria, la memoria asignada por llamar() debe eliminarse utilizando el gratis() método una vez que ya no sea necesario.





¿Cómo usar la función calloc() en C++?

Usar llamar() en C++, siga los pasos que se indican a continuación:

Paso 1: Incluya el archivo de encabezado necesario para llamar() función, que es .



Paso 2: Luego declare una variable de puntero del tipo de datos deseado.

Paso 3: Después de eso usa el llamar() función para asignar memoria e inicializarla a 0.

Etapa 4: Utilice la memoria asignada según sea necesario.

Paso 5: Una vez que haya terminado de usar la memoria asignada, libérela usando el gratis() función.

El siguiente ejemplo muestra la llamar() Implementación de funciones en C++.

#incluye

#incluir

usando el espacio de nombres estándar ;

En t principal ( ) {

  En t * ptr ;

ptr = ( En t * ) llamar ( 6 , tamaño de ( En t ) ) ;

  si ( ! ptr ) {

cout << 'Error en la asignación de memoria' ;

salida ( 1 ) ;

  }

cout << 'Inicializando valores...' << final

<< final ;

  para ( En t i = 0 ; i < 6 ; i ++ ) {

ptr [ i ] = i * 3 ;

  }

cout << 'Valores inicializados'. << final ;

  para ( En t i = 0 ; i < 6 ; i ++ ) {

cout << * ( ptr + i ) << final ;

  }

  gratis ( ptr ) ;

  devolver 0 ;

}

En el código anterior, un puntero entero ptr se declara primero. Luego, la memoria se asigna para 6 enteros usando calloc(), con la memoria siendo inicializada con 0. El tamaño de (int) La función se utiliza para calcular cuánta memoria se requiere para almacenar números enteros. A continuación, se comprueba la asignación de memoria en busca de errores para garantizar el éxito. De lo contrario, el programa finaliza y se muestra un mensaje de error.

Luego, la memoria asignada se inicializa usando números obtenidos al multiplicar 'i*3' usando un para bucle. Los valores guardados en la memoria asignada se imprimen usando un segundo bucle for y aritmética de punteros con *(ptr + i) . En última instancia, la memoria que se asignó dinámicamente se libera llamando al gratis() función, que detiene las fugas de memoria. Como señal de que el programa se ha ejecutado correctamente, devuelve 0.

Producción

Conclusión

En C++, el llamar() La función es útil para asignar memoria dinámicamente. No solo asigna memoria sino que también la pone a cero, lo cual es útil cuando se trabaja con arreglos y estructuras. Comprender cómo utilizar llamar() efectivamente es crucial para evitar fugas de memoria y garantizar el éxito de la ejecución del programa. Los desarrolladores pueden utilizar de forma segura el llamar() en sus programas C++ siguiendo las instrucciones dadas en este artículo.