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]