[Problème avec malloc]
Résolu
Coma white
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour. Je travaille avec c++.
Après compilation de ce code, j'obtiens le message d'erreur suivant : invalid conversion from ‘void*’ to ‘int*’
Q uelqu'un peut-il me dire ce qui bug? merci
Voici mon code :
#include<stdio.h>
#include<stdlib.h>
int *a;
main()
{
a=malloc(sizeof(int));
*a=2;
free(a);
}
Après compilation de ce code, j'obtiens le message d'erreur suivant : invalid conversion from ‘void*’ to ‘int*’
Q uelqu'un peut-il me dire ce qui bug? merci
Voici mon code :
#include<stdio.h>
#include<stdlib.h>
int *a;
main()
{
a=malloc(sizeof(int));
*a=2;
free(a);
}
A voir également:
- Invalid initializer malloc
- Smartone iptv playlist invalid - Forum Box et Streaming vidéo
- The input value is invalid. - Forum Javascript
- Invalid plugin detected. adobe acrobat reader will quit - Forum Programmation
- Invalid details iptv smarters ✓ - Forum Facebook
- Malloc invalid initializer ✓ - Forum C
2 réponses
Salut,
C'est parce que malloc que retourne un pointeur de type void et que tu essaies d'assigner sa valeur de retour à a qui est un pointeur de type int.
Il faut faire une conversion:
Et voilà....
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/malloc.3.html
C'est parce que malloc que retourne un pointeur de type void et que tu essaies d'assigner sa valeur de retour à a qui est un pointeur de type int.
Il faut faire une conversion:
a=(int *) malloc(sizeof(int));
Et voilà....
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/malloc.3.html