函数通过指针返回char数组

时间:2017-08-02 18:45:42

标签: c++ arrays pointers char return

我需要创建一个返回char数组的函数(无参数)。数组的长度将由用户定义。我无法使用gets()函数。

char get()
{
    int size;

    char *str=new char[size];
    int i,l;

    cout<<"enter size";
    cin>>size;

    for(i=0;i<size;i++)
    {
        str[i]=getche();

    }

    str[size]='\0';

    return str[size];
}

1 个答案:

答案 0 :(得分:0)

以下代码可能有用:

char* get()
{
    int size;

    cout<<"enter size";
    cin>>size;
    size++; //For `\0` character

    char *str=new char[size];

    for(int i=0;i<size;i++)
    {
        str[i]=getche();
    }

    str[size]='\0';

    return str;
}

要在调用函数中获取字符串大小(例如在main()中),请使用strlen()头文件中提供的cstring函数。