ja det havde jeg godt nok prøvet, men jeg kom lige i tanke om at der nok også skulle allokeres plads med malloc og vupti så virkede det :-) Skriv et svar hvis du vil have point
ok. Men jeg har faktisk et andet spørgsmål. Så hvis du kan svare på det kan du få pointene :D Hvis jeg nu havde valgt at definere hej som en pointer til en myStruct pointer som jeg vel gør ved at skrive myP *hej; Hvordan kan jeg så komme ind og definere age og navn på hej? Jeg har forsøgt med følgende:
ja det giver sikkert ikke mening, men jeg forsøger at forstå structs og pointere da jeg er rimelig ny i c. Det irriterer mig bare at jeg ikke kan få det til at virke, da jeg syntes at det burde virke det som jeg har skrevet. Hvordan skal jeg helt præcis allokere plads så det vil fungere. Min hesigt med hej = (myP *)malloc(sizeof(hej)); var at den skulle allokere plads til en myStruct. men gør den overhovedet det, eller allokerer den kun plads til en pointer til en myStruct ?
Det kan jeg heller ikke :D Men hvis ikke jeg kan finde ud af at lave det her så har jeg nok ikke forstået pointere og structs 100 %. Hvad er det som følgende linier allokerer plads til ? hej = (myP *)malloc(sizeof(myP)); *hej = (myP)malloc(sizeof(struct myStruct));
hej = (myP *)malloc(sizeof(myP)); /* allokerer plads til en pointer til struct */ *hej = (myP)malloc(sizeof(struct myStruct)); /* allokerer plads til en struct */ (*hej)->navn = (char *)malloc(6); /* allokerer plads til navn */
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.