Cela fait quelques années que j'ai plus codé en C donc ma mémoire est encore un peu défaillante... en considérant ma pile définie ainsi :
et mon code de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 struct _b_stack { struct _b_stack * p_next; void * p_data; }; typedef struct _b_stack BStack;
J'ai un petit soucis au niveau de mon dernier argument de printf dans la fonction print_stack
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
31
32 #include <stdio.h> #include <stdlib.h> #include "../../../Blib.h" void print_stack (void * p_data, void * p_user_data) { BStack * p = (BStack *) p_data; printf ("my_stack : %d\n", (int) p->p_data); } int main (void) { BStack * my_stack = NULL; int i = 0; my_stack = b_stack_new (); for (i = 0; i < 10; i++) my_stack = b_stack_push (my_stack, (void *) i); b_stack_foreach (my_stack, print_stack, NULL); b_stack_free (my_stack); return EXIT_SUCCESS; }
J'ai beau chercher mais il me semble que j'ai bon non ?C:\Projects\BEngine\BLib\bin\Debug\BLib_test_stack\main.c|12|error: dereferencing pointer to incomplete type|Veuillez me raffraichir un peu la mémoire
![]()
Partager