#include "strings.h" #include int strprefix(const char* prefix, const char* str) { return strncmp(prefix, str, strlen(prefix)) == 0; } int streq(const char* a, const char* b) { return strncmp(a, b, strlen(a)) == 0; } char* concat_array(const char** array, size_t size, size_t *output_size) { if (array == NULL || size == 0) return NULL; size_t total_size = 0; for (size_t i = 0; i < size; i++) total_size += strlen(array[i]); if (total_size == 0) return NULL; char* result = malloc(total_size + 1); size_t current_index = 0; for (size_t i = 0; i < size; i++) { size_t curr_len = strlen(array[i]); strncpy(result + current_index, array[i], curr_len); current_index += curr_len; } if (output_size != NULL) *output_size = total_size; return result; }