user28007
8
Q:

malloc in c

int main(int argc, char *argv[])
{
    int* memoireAllouee = NULL;

    memoireAllouee = malloc(sizeof(int));
    if (memoireAllouee == NULL) // Si l'allocation a échoué
    {
        exit(0); // On arrête immédiatement le programme
    }

    // On peut continuer le programme normalement sinon

    return 0;
}
1
//malloc or "memory allocation" reserves a part of the memory

pointer = (cast-type*) malloc(byte-size)
  
//Example
ptr = (int*) malloc(100 * sizeof(int));

Since the size of int is 4 bytes, this statement will allocate 400 bytes
of memory. And, the pointer ptr holds the address of the first byte in
the allocated memory.
4
ptr = (cast-type*)calloc(n, element-size);
3
#include <stdlib.h>

void *malloc(size_t size);

void exemple(void)
{
  char *string;
  
  string = malloc(sizeof(char) * 5);
  string[0] = 'H';
  string[1] = 'e';
  string[2] = 'y';
  string[3] = '!';
  string[4] = '\0';
  printf("%s\n", string);
}

/// output : "Hey!"
2
ptr = (cast-type*) malloc(byte-size)
0
int* a =(int*)malloc(sizeof(int))
1
#define ARR_LENGTH 2097152
int *arr = malloc (ARR_LENGTH * sizeof *arr);
0
ptr = (castType*) malloc(size);
0

New to Communities?

Join the community