Я пытаюсь выполнить резервное копирование в своем программировании и узнать что-то, что я как-то пропустил (если только я не понимаю проблему). Я пытаюсь предложить пользователю ввести имя проекта, и я хочу сохранить это имя в переменной. Обычно я использовал бы getline()
или std::cin >> std::string some_string
, но задание просит меня сделать это без использования строк. «Вы не можете использовать класс строк - вместо этого используйте символы массива». В этом и заключается вопрос: как взять пользовательский ввод и сохранить его в массиве символов?Пользовательский ввод, хранящийся в массиве char (C++)
Пользователь должен ввести слово, а затем нажать Enter ... Как я могу захватить это в массив символов? Если бы слово приходило в один символ за раз, я мог просто добавить его в массив, динамически расширяя, если нужно, но когда он входит в блок char, я теряюсь для идей. Благодаря!
'cin.getline (имя, SizeOf (имя));' – karlphillip
@karl: Опасный, потому что если 'name' изменяется на указатель, он по-прежнему будет собираться, но делает неправильная вещь. –
Конечно, но это предложение идет рука об руку с тем, что указано в ответе. Если @Chad использовал указатели, я бы не оставил свой предыдущий комментарий. :) – karlphillip