fertig MK

This commit is contained in:
Efe Turhan 2025-12-11 13:50:52 +01:00
parent 4515fc0b8d
commit 4adba4380c
12 changed files with 8 additions and 8 deletions

View File

@ -24,7 +24,7 @@ TreeNode *addToTree(TreeNode *root, const void *data, size_t dataSize, CompareFc
newNode->left = NULL; newNode->left = NULL;
newNode->right = NULL; newNode->right = NULL;
if (isDuplicate) *isDuplicate = 0; // Neu eingefügt if (isDuplicate) *isDuplicate = 0; // Neu eingefügtkjjhiuzg
return newNode; return newNode;
} }

BIN
doble.exe

Binary file not shown.

Binary file not shown.

View File

@ -1,3 +1 @@
irgendjemand;14804 efe;3992
efe;4991
alev;4960

View File

@ -16,7 +16,7 @@ endif
# Objekt-Dateien, die wir für das Spiel brauchen # Objekt-Dateien, die wir für das Spiel brauchen
OBJ = stack.o bintree.o numbers.o timer.o highscore.o OBJ = stack.o bintree.o numbers.o timer.o highscore.o
# --- Hauptziel: Das Spiel bauen ---
# Hier fügen wir $(LDFLAGS) am Ende hinzu, damit -lopengl32 etc. genutzt werden # Hier fügen wir $(LDFLAGS) am Ende hinzu, damit -lopengl32 etc. genutzt werden
doble: main.o $(OBJ) doble: main.o $(OBJ)
$(CC) $(FLAGS) main.o $(OBJ) -o doble $(LDFLAGS) $(CC) $(FLAGS) main.o $(OBJ) -o doble $(LDFLAGS)

View File

@ -64,7 +64,7 @@ unsigned int getDuplicate(const unsigned int *numbers, unsigned int len)
{ {
if (!numbers || len < 2) return 0; if (!numbers || len < 2) return 0;
unsigned int *copy = (unsigned int *)malloc(len * sizeof(unsigned int)); unsigned int *copy = malloc(len * sizeof(unsigned int));
if (!copy) return 0; if (!copy) return 0;
memcpy(copy, numbers, len * sizeof(unsigned int)); memcpy(copy, numbers, len * sizeof(unsigned int));

BIN
numbers.o

Binary file not shown.

View File

@ -6,7 +6,7 @@
// und gibt den neuen Knoten als neuen Stack-Kopf zurück. // und gibt den neuen Knoten als neuen Stack-Kopf zurück.
StackNode *push(StackNode *stack, void *data) StackNode *push(StackNode *stack, void *data)
{ {
StackNode *newNode = (StackNode *)malloc(sizeof(StackNode)); StackNode *newNode = malloc(sizeof(StackNode));
if (newNode == NULL) { if (newNode == NULL) {
// Bei Speicherfehler geben wir den alten Stack unverändert zurück // Bei Speicherfehler geben wir den alten Stack unverändert zurück
// (oder man könnte das Programm beenden) // (oder man könnte das Programm beenden)
@ -44,4 +44,6 @@ void clearStack(StackNode *stack)
while (stack != NULL) { while (stack != NULL) {
stack = pop(stack); stack = pop(stack);
} }
} }

BIN
stack.o

Binary file not shown.

BIN
test_numbers.exe Normal file

Binary file not shown.

View File

@ -53,7 +53,7 @@ void test_clear_stack() {
} }
clearStack(s); clearStack(s);
// Hinweis: clearStack gibt den Speicher frei, kann aber den lokalen Pointer 's' // clearStack gibt den Speicher frei, kann aber den lokalen Pointer 's'
// hier in der Funktion nicht auf NULL setzen (da C "Call by Value" nutzt). // hier in der Funktion nicht auf NULL setzen (da C "Call by Value" nutzt).
// Wir setzen ihn manuell auf NULL oder benutzen ihn einfach nicht weiter. // Wir setzen ihn manuell auf NULL oder benutzen ihn einfach nicht weiter.
s = NULL; s = NULL;

BIN
test_stack.exe Normal file

Binary file not shown.