Halo,

Saya lupa caranya di C untuk pass by reference sebuah array yg berisi
pointers. Saya coba spt di bawah dapetnya segfault. (Ceritanya mau bikin
adjacency list utk suatu graph).

#include <stdio.h>
#include <stdlib.h>

struct _edge
{
    int adj;
    int cap;
    int flow;
    struct _edge* next;
};
typedef struct _edge edge;

void fungsi(edge** G[])
{
    /* saya mau mengubah isi G ini tapi supaya tidak hilang
       setelah function ini return */
    edge* curr;
    curr = (edge*) malloc(sizeof(edge));
    curr->adj = 1;
    curr->cap = 2;
    curr->flow = 3;
    curr->next = NULL;
    (*G)[0] = curr;
}

int main()
{
    edge* G[5];
    int i;

    for(i=0; i<5; i++)
        G[i] = NULL;

    fungsi(&G);

    for(i=0; i<5; i++)
        printf("%X\n", G[i]);
}

Mohon saya diingatkan kembali. Makasih.

PS. sekalian ada yg punya URL utk referensi C terutama yg berurusan dengan
complex data structure seperti linked list dan arrays?

-- 
Ronny Haryanto

--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]

Kirim email ke