0x13. C More singly linked lists Task 10 - humtej1204/holbertonschool-low_level_programming GitHub Wiki
mandatory
Write a function that deletes the node at index index of a listint_t linked list.
- Prototype:
int delete_nodeint_at_index(listint_t **head, unsigned int index);
- where
index
is the index of the node that should be deleted. Index starts at0
- Returns:
1
if it succeeded,-1
if it failed
julien@ubuntu:~/0x13. More singly linked lists$ cat 10-main.c
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include "lists.h"
/**
* main - check the code
*
* Return: Always 0.
*/
int main(void)
{
listint_t *head;
head = NULL;
add_nodeint_end(&head, 0);
add_nodeint_end(&head, 1);
add_nodeint_end(&head, 2);
add_nodeint_end(&head, 3);
add_nodeint_end(&head, 4);
add_nodeint_end(&head, 98);
add_nodeint_end(&head, 402);
add_nodeint_end(&head, 1024);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 5);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
printf("-----------------\n");
delete_nodeint_at_index(&head, 0);
print_listint(head);
return (0);
}
julien@ubuntu:~/0x13. More singly linked lists$ gcc -Wall -pedantic -Werror -Wextra -std=gnu89 10-main.c 3-add_nodeint_end.c 0-print_listint.c 5-free_listint2.c 10-delete_nodeint.c -o k
julien@ubuntu:~/0x13. More singly linked lists$ valgrind ./k
==5571== Memcheck, a memory error detector
==5571== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==5571== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==5571== Command: ./k
==5571==
0
1
2
3
4
98
402
1024
-----------------
0
1
2
3
4
402
1024
-----------------
1
2
3
4
402
1024
-----------------
2
3
4
402
1024
-----------------
3
4
402
1024
-----------------
4
402
1024
-----------------
402
1024
-----------------
1024
-----------------
-----------------
-----------------
-----------------
-----------------
-----------------
-----------------
-----------------
-----------------
-----------------
==5571==
==5571== HEAP SUMMARY:
==5571== in use at exit: 0 bytes in 0 blocks
==5571== total heap usage: 9 allocs, 9 frees, 1,152 bytes allocated
==5571==
==5571== All heap blocks were freed -- no leaks are possible
==5571==
==5571== For counts of detected and suppressed errors, rerun with: -v
==5571== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
julien@ubuntu:~/0x13. More singly linked lists$
- GitHub repository: holbertonschool-low_level_programming
- Directory: 0x13-more_singly_linked_lists
- File: 10-delete_nodeint.c