C++ 如何调用返回指针数组的函数?C++;

C++ 如何调用返回指针数组的函数?C++;,c++,arrays,function,pointers,syntax,C++,Arrays,Function,Pointers,Syntax,对指针完全陌生,所以我为这个新手问题道歉。尝试调用函数时收到转换错误。 这个函数应该返回一个指向更新数组的指针,该数组的末尾包含1 int* appendList(int x, int &arraySize, int *list) { arraySize++; int *array2 = new int[arraySize]; for(int i=0; i < arraySize-1; i++) { array2[i] = list[

对指针完全陌生,所以我为这个新手问题道歉。尝试调用函数时收到转换错误。 这个函数应该返回一个指向更新数组的指针,该数组的末尾包含1

int* appendList(int x, int &arraySize, int *list)
{
    arraySize++;
    int *array2 = new int[arraySize];
    for(int i=0; i < arraySize-1; i++)
    {
        array2[i] = list[i-1];
    }
    array2[arraySize]=x;

    return array2;
}
int*appendList(int x,int&arraySize,int*list)
{
arraySize++;
int*array2=新int[arraySize];
for(int i=0;i
我的主要功能如下

int main()
{
    int size=0;
    int *list;
    cout << "Please enter the size of your array: ";
    cin >> size;
    list = new int[size];
    cout << "\nPlease enter the numbers in your list seperated by spaces: ";
    for(int i=0; i < size; i++)
    {
        cin >> list[i];
    }
    cout << endl;
    cout << "The array you entered is listed below\n ";
    for(int i=0; i < size; i++)
    {
        cout << setw(3) << list[i];
    }

    list = appendList(1, size, list);
    for(int i=0; i < size; i++)
    {
        cout << setw(3) << list[i];
    }

    return 0;
}
intmain()
{
int size=0;
int*列表;
大小;
列表=新整数[大小];
列表[i];
}

我在你的代码中发现了一个错误

 int* appendList(int x,int &arraySize,int *list)
        {
        arraySize++;
        int *array2=new int[arraySize];
        for(int i=0;i<arraySize-1;i++)
        {
            array2[i]=list[i-1];//this is incorrect because for i=0 it becomes list[-1] which is wrong
        }
        array2[arraySize]=x;

        return array2;
        }
int*appendList(int x,int&arraySize,int*list)
{
arraySize++;
int*array2=新int[arraySize];

因为(inti=0;i我在你的代码中发现了一个错误

 int* appendList(int x,int &arraySize,int *list)
        {
        arraySize++;
        int *array2=new int[arraySize];
        for(int i=0;i<arraySize-1;i++)
        {
            array2[i]=list[i-1];//this is incorrect because for i=0 it becomes list[-1] which is wrong
        }
        array2[arraySize]=x;

        return array2;
        }
int*appendList(int x,int&arraySize,int*list)
{
arraySize++;
int*array2=新int[arraySize];

对于(In i=0;IUE使用代码> CUT< /COD>和< SEtW商店> /CODE >没有<代码> STD::/Cord>,所以我想您使用上面的命名空间STD<代码>声明了<代码>。然后<代码>列表/<代码>变量名称可能与<代码> STD::列表< /代码>发生冲突。请尝试使用其他名称。我可以使用其他名称吗?List1、MyOrLista、Ay,或者与C++关键字不同的名称。STL模板。或者您可以尝试不使用
使用名称空间std;
来公开std::.中的所有名称。您使用
cout
setw
而不使用
std::
,因此我猜您在上面声明了
使用名称空间std
。然后
列表
变量名可能与
std::list
冲突。请尝试使用其他名称。我可以使用其他名称:List1、MyOrthLista、Ayle,或者不同于C++关键字或STL模板的名称。或者可以尝试不使用<代码>使用命名空间STD;< /COD>公开STD中的所有名称:谢谢。我还没有能够调试它,因为我不能正确调用函数。谢谢,我还没有调试它。因为我无法正确调用函数。