bonjour,
J'essaie de faire une liste doublement chainée circulaire mais sa seg fault dès que je l'affiché..
Donc, ma structure est celle ci:
et le code l'utilisant est celui ci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 typedef struct s_arguments { char *str; int select; struct s_arguments *nxt; struct s_arguments *prv; } t_arguments;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 t_arguments *add_elem(t_arguments *first, t_arguments *cur, char *str) { t_arguments *new_elem; new_elem = my_malloc(sizeof(*new_elem)); new_elem->str = my_strdup(str); new_elem->select = 0; new_elem->prv = first; new_elem->nxt = cur; return (new_elem); } t_arguments *sort_in_list(int ac, char **av) { int i; t_arguments *my_arg; t_arguments *new_elem; i = 1; my_arg = 0; new_elem = my_arg; while (i < ac) { new_elem = add_elem(my_arg, new_elem, av[i]); new_elem = new_elem->nxt; i++; } my_putstr(my_arg->str); return (my_arg); }
Partager