Erreur compilation

selmaensi Messages postés 4 Date d'inscription vendredi 28 juillet 2006 Statut Membre Dernière intervention 21 mars 2007 - 1 août 2006 à 11:17
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 - 1 août 2006 à 16:58
j'ai une erreur au niveau de la compilation d'programme en turboC++
à la ligne:"T[i].pointeur=(struct cellule *)malloc(struct cellule)" le compilaterur réclame qu'il ne peut pas convertir "cellule" en "cellule" sachant que j'ai utilisé le même syntaxe ailleur avec un pointeur:"(*p).pointeur=(struct cellule *)malloc(sruct cellule)" et le compilateur n'a rien réclamé.Ou est l'erreur s'il vous plait? 

3 réponses

BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
1 août 2006 à 11:24
D'une manière générale, le paramètre de malloc est la taille qu'on veut allouer.
Donc: malloc(sizeof(struct cellule)) me semble plus judicieux

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
vinc1008881 Messages postés 257 Date d'inscription dimanche 22 août 2004 Statut Membre Dernière intervention 29 septembre 2010 3
1 août 2006 à 11:57
malloc renvoit un point void* pas besoin de convertir
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
1 août 2006 à 16:58
En C++ on est obligé de convertir, pas en C. Mais vu qu'on utilise malloc en C et pas en C++ (normalement), effectivement on devrait pas avoir a caster ici

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
Rejoignez-nous