Как более четко использовать функцию getline

#c #function #getline

Вопрос:

Недавно я объявил некоторый массив символов и создал функцию с именем inputValue , которая получает символ* str; но я пытаюсь изменить массив на строку и получить ту же информацию с помощью функции getline. Я знаю, что, используя getline, я могу это сделать. но я хочу поместить getline в свою функцию inputValue и использовать ее. В этом случае, как я могу изменить свою функцию inputValue. ниже приведена моя функция inputValue.

 inline void InputValue(char* str) {     
cin >> str;
};
 

Комментарии:

1. Это хрупкая функция. operator>> понятия не имеет, насколько велик массив, на который str указывает. Почему бы не использовать std::string ?

2. std::cin.getline(str, count) ?

3. @TedLyngmo — re: «Почему бы не использовать std::string ?» — вопрос в том, как это сделать.

4. @PeteBecker Это делает — в коде не просто показано, что было опробовано.

5. @minsg: Ты пробовал void InputValue(std::stringamp; str) { std::cin >> str; } ?