Вы можете определить массив stati c строк:
const char *field_names[] = {
"apple",
"banana",
NULL
};
И затем l oop над массивом, проверяя, совпадает ли строка с одним из элементов массива:
for (int i = 0; field_names[i] != NULL; i++) {
if (!strcmp(input, field_names[i]))
// Do things
}
Если вам нужно ограничить размер сравнения, вы можете иметь массив структур, сочетающих строку имени + размер.
И если вам нужно выполнить разные действия для каждого из них , вы можете включить в структуру указатель на функцию, чтобы указать, что делать.