Есть ли способ распечатать индекс члена массива? [закрыто]

-3
задан Tim Randall 5 March 2019 в 17:20
поделиться

2 ответа

Вы можете 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
0
ответ дан Caleth 5 March 2019 в 17:20
поделиться

Кажется, что вы хотите напечатать индекс элемента массива, который находится в индексе 2. Вы можете сделать это следующим образом:

std::cout << 2;
0
ответ дан eerorika 5 March 2019 в 17:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: