#include <stdio.h>
#include <string.h>
#include <stdbool.h>
// Function to check if a string starts with a given prefix
bool startsWith(const char *string, const char *prefix) {
// Compare the prefix with the start of the string
size_t prefixLength = strlen(prefix);
return strncmp(string, prefix, prefixLength) == 0;
}
// Function to check if the string starts with any substring from the array
bool startsWithAny(const char *string, const char *substrings[], size_t substringsSize) {
for (size_t i = 0; i < substringsSize; ++i) {
if (startsWith(string, substrings[i])) {
return true;
}
}
return false; // Return false if no substring matches
}
int main() {
const char *string = "abcdefg";
// Array of substrings
const char *substrings[] = {"xy", "poq", "mnop", "abc", "rsuvw"};
size_t substringsSize = sizeof(substrings) / sizeof(substrings[0]);
// Check if the string starts with any substring from the array
if (startsWithAny(string, substrings, substringsSize)) {
printf("The string starts with a substring from the array.\n");
} else {
printf("The string does not start with any substring from the array.\n");
}
return 0;
}
/*
run:
The string starts with a substring from the array.
*/