07. oktober 2004 - 19:33Der er
3 kommentarer og 1 løsning
return array driller
Har en funktion der skal returnere et array til en data struktur som jeg har lavet. Funktionen er som følger: nod* listToArray(nod* head){ int i; int count(nod* head); //tæller elementer i linked list int amount = count(head); nod** linkedArray = (nod**)malloc(amount * sizeof(nod*)); for(i=0; i<amount; i++){ linkedArray[i] = head; head = head->next; } return linkedArray; }
Nu skal jeg så bruge det array i en anden funktion og jeg bruger den saadan her:
hmm ja det kan jeg godt se. Har oxo prøvet med nod** og er sikkert oxo det rigtige. Men så gaar det galt senere hen. Tror lige jeg må uddybe det jeg har gang i. Først fik jeg det her til at virke (quicksort en linked list):
void qsortLinked(nod** heada){ nod* listToArray(nod* head); nod* head = *heada; int amount = count(head); int i; int count(nod* head); void quickSort(nod* a[], int left, int right); nod** linkedArray = (nod**)malloc(amount * sizeof(nod*)); for(i=0; i<amount; i++){ linkedArray[i] = head; head = head->next; } quickSort(linkedArray, 0, (amount-1));
Nu er det saa at jeg vil have lagt den del af funktionen der 'konvertere' den linkede liste til et array ind i en funktion for sig selv da jeg skal bruge den igen senere hen uden quicksorten vel og maerket.
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.