| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | /* | ||
| 2 | ** EPITECH PROJECT, 2024 | ||
| 3 | ** my_str_contains | ||
| 4 | ** File description: | ||
| 5 | ** Returns 1 if the string (str) contains at least one character from the | ||
| 6 | ** char list (char_list), 0 otherwise | ||
| 7 | */ | ||
| 8 | /** | ||
| 9 | * @file my_str_contains.c | ||
| 10 | * @brief The file containing the my_str_contains function | ||
| 11 | * @author Nicolas TORO | ||
| 12 | */ | ||
| 13 | |||
| 14 | #include "my.h" | ||
| 15 | |||
| 16 | 1201753 | static int check_char_list(char *str, char *char_list, int i) | |
| 17 | { | ||
| 18 |
2/2✓ Branch 0 taken 2554070 times.
✓ Branch 1 taken 1201548 times.
|
3755618 | for (int j = 0; char_list[j] != '\0'; j++) { |
| 19 |
2/2✓ Branch 0 taken 205 times.
✓ Branch 1 taken 2553865 times.
|
2554070 | if (str[i] == char_list[j]) |
| 20 | 205 | return 1; | |
| 21 | } | ||
| 22 | 1201548 | return 0; | |
| 23 | } | ||
| 24 | |||
| 25 | 41976 | int my_str_contains(char *str, char *char_list) | |
| 26 | { | ||
| 27 |
2/4✓ Branch 0 taken 41976 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 41976 times.
|
41976 | if (str == NULL || char_list == NULL) |
| 28 | ✗ | return 0; | |
| 29 |
2/2✓ Branch 0 taken 1201753 times.
✓ Branch 1 taken 41771 times.
|
1243524 | for (int i = 0; str[i] != '\0'; i++) { |
| 30 |
2/2✓ Branch 1 taken 205 times.
✓ Branch 2 taken 1201548 times.
|
1201753 | if (check_char_list(str, char_list, i)) |
| 31 | 205 | return 1; | |
| 32 | } | ||
| 33 | 41771 | return 0; | |
| 34 | } | ||
| 35 |