возвращение функцией переменной типа char, или как работать с указателями

Компьютеры программирование программы C++

имеется така программа:
char getText(int x)
{
char txt[x];
int i=0;
ifstream sourcetxt;
sourcetxt.open("source.txt", ios::in);


while (!sourcetxt.eof())
{
for (i=0; i<x; i++)
{
sourcetxt >> txt[i];

}
}

sourcetxt.close();

return txt;
}
int main()
{
string ish,src;
int i,x;
x=0;
ifstream source,sourcetxt;
source.open("source.txt", ios::in);
while (!source.eof())
{
source >> ish;
src.append(ish);

}
source.close();
x=src.length();

getText (x);
return 0;
}



понимаю что написана по индусски, не надо ругать за это
мне надо чтобы она посимвольно записала все в переменную типа char и вернула этот массив
не могу разобраться как работать с указателями, так как знаю что функция не может возвращать массивы.
подскажите как работать с указателем в таком случае.
чтобы функция вернула записанный txt[x]

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.