Ben hier nu al twee dagen mee bezig, en ik kom er maar niet uit..
Ik moet om data op te slaan een onbepaalde hoeveelheid structs aanmaken in mijn programma (net zoveel structs als dat ik data inlees uit een file). Ik wil dus een array van pointers naar alle structs maken om alles te adresseren en die array met malloc de juiste grootte geven.
voorbeeld :
maar bij het compileren van dat laatste gaat het fout :
Wat bedoelt mijn compiler (mingw) nu precies?
Ik moet om data op te slaan een onbepaalde hoeveelheid structs aanmaken in mijn programma (net zoveel structs als dat ik data inlees uit een file). Ik wil dus een array van pointers naar alle structs maken om alles te adresseren en die array met malloc de juiste grootte geven.
voorbeeld :
code:
1
2
3
4
5
6
7
8
9
10
11
| //een simpele struct
struct foo{
int bla;
}
foo bla; /* een pointer naar een struct foo die bla heet OK */
foo bla2[10]; /*een array van 10 structs, de array heet bla2 OK */
int n; /* aantal structs dat ik wil aanmaken */
foo *bar; /* een pointer naar een pointer naar een struct */
bar = malloc (sizeof(foo) * n); /* alloceer genoeg geheugen voor n pointers naar structs van het type foo */ |
maar bij het compileren van dat laatste gaat het fout :
code:
1
| invalid conversion from 'void*' to 'foo*' |
Wat bedoelt mijn compiler (mingw) nu precies?
/me heeft eindelijk ook een icoontje.. woef.. boeien..