C ++ calloc () - Biblioteca estándar de C ++

La función calloc () en C ++ asigna un bloque de memoria para una matriz de objetos e inicializa todos sus bits a cero.

La función calloc () devuelve un puntero al primer byte del bloque de memoria asignado si la asignación tiene éxito.

Si el tamaño es cero, el valor devuelto depende de la implementación de la biblioteca. Puede ser o no un puntero nulo.

prototipo calloc ()

 void * calloc (tamaño_t num, tamaño_t tamaño);

La función se define en el archivo de encabezado.

Parámetros de calloc ()

  • num: un valor integral sin signo que representa el número de elementos.
  • tamaño: Un valor integral sin signo que representa el bloque de memoria en bytes.

calloc () Valor de retorno

La función calloc () devuelve:

  • un puntero al inicio del bloque de memoria asignado por la función.
  • puntero nulo si falla la asignación.

Ejemplo 1: ¿Cómo funciona la función calloc ()?

 #include #include using namespace std; int main() ( int *ptr; ptr = (int *)calloc(5, sizeof(int)); if (!ptr) ( cout << "Memory Allocation Failed"; exit(1); ) cout << "Initializing values… " << endl << endl; for (int i = 0; i < 5; i++) ( ptr(i) = i * 2 + 1; ) cout << "Initialized values" << endl; for (int i = 0; i < 5; i++) ( /* ptr(i) and *(ptr+i) can be used interchangeably */ cout << *(ptr + i) << endl; ) free(ptr); return 0; ) 

Cuando ejecute el programa, la salida será:

 Inicializando valores … Valores inicializados 1 3 5 7 9 

Ejemplo 2: función calloc () con tamaño cero

 #include #include using namespace std; int main() ( int *ptr = (int *)calloc(0, 0); if (ptr == NULL) ( cout << "Null pointer"; ) else ( cout << "Address = " << ptr << endl; ) free(ptr); return 0; )

Cuando ejecute el programa, la salida será:

 Dirección = 0x371530

Articulos interesantes...