From 5da4b7039f401273efbf98324c839f693d32d29c Mon Sep 17 00:00:00 2001
From: Orestis <orestis.malaspinas@pm.me>
Date: Mon, 9 Dec 2024 15:01:44 +0100
Subject: [PATCH] removed element *

---
 slides/cours_11.md | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/slides/cours_11.md b/slides/cours_11.md
index 40403b5..347fecb 100644
--- a/slides/cours_11.md
+++ b/slides/cours_11.md
@@ -294,7 +294,9 @@ typedef struct _element {
     int data;
     struct _element *next;
 } element;
-typedef element* stack;
+typedef struct _stack {
+    element *top;
+} stack;
 ```
 
 ## Fonctionnalités?
@@ -302,12 +304,12 @@ typedef element* stack;
 . . .
 
 ```C
-void stack_create(stack *s); // *s = NULL;
+void stack_create(stack *s); // s->top = NULL;
 void stack_destroy(stack *s);
 void stack_push(stack *s, int val);
 void stack_pop(stack *s, int *val);
 void stack_peek(stack s, int *val);
-bool stack_is_empty(stack s); // return NULL == stack;
+bool stack_is_empty(stack s); // return NULL == s.top;
 ```
 
 # La liste chaînée et pile (3/6)
@@ -335,7 +337,7 @@ void stack_push(stack *s, int val) {
     element *elem = malloc(sizeof(*elem));
     elem->data = val;
     elem->next = *s;
-    *s = elem;
+    s->top = elem;
 }
 ```
 
@@ -361,7 +363,7 @@ void stack_push(stack *s, int val) {
 
 ```C
 void stack_peek(stack s, int *val) {
-    *val = s->data;
+    *val = s.top->val;
 }
 ```
 
@@ -388,8 +390,8 @@ void stack_peek(stack s, int *val) {
 ```C
 void stack_pop(stack *s, int *val) {
     stack_peek(*s, val);
-    element *tmp = *s;
-    *s = (*s)->next;
+    element *tmp = s->top;
+    s->top = s->top->next;
     free(tmp);
 }
 ```
-- 
GitLab