Вы можете std::find
строка в массиве, а затем рассчитать std::distance
этого от начала массива.
std::string month[] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
std::size_t getIndex(const std::string & text) {
auto pos = std::find(std::begin(month), std::end(month), text);
return std::distance(std::begin(month), pos);
}
int main() {
std::cout << getIndex("March") << " " << getIndex("Not a month");
}
С выходом
2 12
Кажется, что вы хотите напечатать индекс элемента массива, который находится в индексе 2. Вы можете сделать это следующим образом:
std::cout << 2;