Déclaration dynamique en C

dudy -  
 marvinrouge -
est il possible de déclarer dynamiquement des variables en C ????

1 réponse

  1. pizzabiere Messages postés 28 Statut Membre
     
    hi dudy

    *malloc(unsigned nombre_d_octets)
    tu obtiens un pointeur sur nombre_d_octets octets de mémoire, non initialisés, ou NULL si la demande ne peut pas être satisfaite.

    il faut convertir dans le type ad hoc :
    int *nb;

    nb = (int*) malloc(12);

    free(p) libère l'espace poité par p, seulement si p a été obtenu par un appel de la fonction malloc !

    @ +
    Pizzabiere
    0
    1. marvinrouge
       
      je rajouterai meme

      en C:

      int* a = (int*)malloc(N*sizeof(int));

      id(a!=NULL)
      {
      free(a);
      a = NULL;
      }

      en C++:

      int* a = new int[N];
      id(a!=NULL)
      {
      delete [] a;
      a = NULL;
      }

      ATTENTION à ne pas mélanger comme l'a souligné pizzabiere

      malloc+free
      new+delete
      0