[Problème avec malloc]
Résolu
Coma white
Messages postés
5
Statut
Membre
-
kilian Messages postés 8854 Statut Modérateur -
kilian Messages postés 8854 Statut Modérateur -
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
- Invalid details iptv smarters - Forum TV & Vidéo
- Invalid plugin detected. adobe acrobat reader will quit - Forum Programmation
- Un problème d'initialisation avec malloc en C ✓ - Forum C
- The input value is invalid. - Forum Javascript
- Invalid configuration information please run setup program ✓ - Forum Matériel & Système
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