C ++: использование и возврат символьных массивов из функций, типа возвращаемого значения или ссылки?Я пытаюсь создать строку с нулевым символом в конце вне функции, а затем запустить функцию, которая назначит ей некоторые данные.Например, char abc [80]
создается в main
.Затем запускается input()
, который возвращает пользовательский ввод в abc
.Я полагаю, что есть два очевидных способа сделать это:
1.Сделайте так, чтобы функция ввода возвращала ввод в переменную main, что-то вроде:
char input ()
{
char input [80];
getline(cin, choice);
return input;
}
int main ()
{
char choice [80];
choice = input ();
...
}
2.Передайте массив символов в функцию ввода моя ссылка, а затем поместите туда данные:
...
void input (&variable)
{
getline(*variable, cin);
return;
}
int main ()
{
char choice [80];
char* pointer;
input (pointer);
...
}
Но я не могу заставить ни один из этих способов работать.Итак, что я делаю не так и как я могу это исправить?