[C] Allocation mémoire

Voir le sujet précédent Voir le sujet suivant Aller en bas

[C] Allocation mémoire

Message  Dj x-fuse le Ven 22 Oct 2010, 15:01

Bonjour à tous,

Dans le cadre du cours de C de deuxième, nous voyons actuellement les allocations mémoire (malloc, calloc, free, ...).
Suite à un exemple affiché au tableau (et dont le prof ne m'a mystérieusement pas répondu à ma question), je décide de la poser ici.

Voici le code en question :
Code:
int i;
   char * pChar = (char*)malloc(5*sizeof(char));
   pChar[0] = 'a';
   *(pChar+2) = 'b';
   pChar[4] = 'c';
   for(i=0; i<5; i++)
      printf("%s\n",(pChar+i));
   free(pChar);
Quand j'exécute le code avec et sans le (char*) je n'ai aucun changement. Alors pourquoi utiliser un casting dans ce cas-ci ? Est-ce réellement nécessaire étant donné qu'à l'exécution rien ne change ?

Merci d'avance Smile

Dj x-fuse

Nombre de messages : 658
Age : 27
Prénom : Jonathan
Statut : 4ième sécu
Localisation : IRL
Date d'inscription : 18/10/2008

Revenir en haut Aller en bas

Re: [C] Allocation mémoire

Message  smb le Ven 22 Oct 2010, 15:19

Le casting (char *) devant malloc n'est pas nécessaire en C.
Par contre, en C++, si tu l'oublies il y aura une erreur à la compilation.

Cool

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

Re: [C] Allocation mémoire

Message  nvs le Ven 22 Oct 2010, 15:40

et donc, certains codeurs préconisent le transtypage pour que le code c soit plus clair et compatible avec le c++, d'autres indiquent que ce transtypage peut mener à des erreurs difficiles à détecter...








Suspect

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [C] Allocation mémoire

Message  Dj x-fuse le Ven 22 Oct 2010, 16:04

Merci pour cette précision !

Dj x-fuse

Nombre de messages : 658
Age : 27
Prénom : Jonathan
Statut : 4ième sécu
Localisation : IRL
Date d'inscription : 18/10/2008

Revenir en haut Aller en bas

Re: [C] Allocation mémoire

Message  Contenu sponsorisé Aujourd'hui à 10:50


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum