01. februar 2005 - 16:08
Der er
9 kommentarer og 1 løsning
Structs og arrays i C
Jeg sidder og kæmper med en struct, der skal indeholde et array. Det er jo nemt nok... struct bus { int numberList[]; ... } men er det lovligt at benytte en tom angivelse af størrelsen på arrayet? og hvordan sætter jeg størrelsen efterfølgende? //Jesper
Annonceindlæg fra Arctic Wolf
01. februar 2005 - 16:28
#2
hvorfor lige 117? og er det samme procedure, hvis jeg vil lave et array af strenge? altså struct bus { int **numberList; ... } minbus.numberList = (char *)malloc(117*sizeof(char)); //Jesper
02. februar 2005 - 09:01
#7
Weird... Ligegyldigt hvad jeg indsætter i stedet for 117, så får jeg kun 4 pladser i integer-arrayet! //Jesper
02. februar 2005 - 09:06
#8
Øh. Hvordan tester du det ? sizeof(minbus.numberList) returnerer altid 4 (på 32 bit systemer), men det er fordi sizeof returnerer størrelsen af pointeren ikke størrelsen af det som den peger på.
02. februar 2005 - 09:19
#9
Tak for hjælpen! Fandt selv ud af det har blot tilføjet en variabel, der hedder size og så lavet en funktion, der klarer initialiseringen. - hvordan er du blevet så klog Arne_v??? - jeg bliver imponeret hver gang! //Jesper