У меня есть указатель с именем char * panimal_name
. Этот указатель должен содержать до 20 символов, и если пользователь вводит больше, он должен попросить пользователя ввести его повторно.
Я попытался подсчитать символы в потоке, а также использовать strlen()
, однако у меня все еще есть проблемы.
cout << "Enter Animal Name: ";
cin.ignore();
cin.getline(panimal_name, 20);
Любая помощь будет оценена.
РЕДАКТИРОВАТЬ: Ну, я хочу, чтобы он принимал не более 20 символов от пользователя. Если этот 20 превышен, он должен затем попросить пользователя повторно ввести действительный ввод. Однако в этой настройке он теперь портит поток для моих следующих входов. Причина, по которой я использую это, а не std::string
, заключается в том, что я сейчас изучаю указатели.
P.S. Я знаю, что строка, вероятно, будет лучше в этой ситуации для простоты использования.