C++参数传递(未完待续)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/WilliamYuYuYu/article/details/79217186

函数的参数和返回值都是基本类型的情况比较简单,略过。

Part1:如果我想向一个函数传递数组

int f1(int arr[], int n)
{
    int total;
    for(int i=0; i<n; i++)
        total = total + arr[i];
    return total;
}

int main()
{
    int coo[size]={1,2,1,4,2};
    int sum = f1(coo, size);
    return 0;
}

Part2:如果我想向一个函数传递数组,并返回经由他作用的数组覆盖原数组

void revalue(int arr[], int n)
{
    int x;
    for(int i=0; i<n; i++)
        arr[i] *= x;
}

int main()
{
    int coo[size]={1,2,1,4,2};
    revalue(coo, size); //这里和以前不一样,
    //使用普通参数时,C++按值传递数据,函数使用的是数据的副本,
    //然而,对于接收数组名字的函数将使用原始数据。
    //为防止函数无意修改数组内容,可在声明形参时使用关键字const
    //eg:int f1(const int arr[], int n);
    return 0;
}

Part3:如果我想向一个函数传递数组,然而这数组是个动态数组,程序开始之前并不知道它有多大,并且我希望返回经他作用的数组,并且覆盖原数组

Part4:如果我想向一个函数传递数组,然而这数组是个动态数组,程序开始之前并不知道它有多大,并且我希望返回经他作用的数组,并且不能覆盖原数组

Part5:如果我想向一个函数传递二维数组,然而这数组是个动态数组,程序开始之前并不知道它有多大,并且我希望返回经他作用的数组,并且不能覆盖原数组

Part6:如果我想向一个函数传递字符串,而不需要返回

Part7:如果我想向一个函数传递二维字符串,而不需要返回

Part8:如果我想向一个函数传递字符数组,并且我希望返回经他作用的数组,并且覆盖原数组

Part9:如果我想向一个函数传递二维字符数组,并且我希望返回经他作用的二维数组,并且覆盖原数组

Part10:如果我想向一个函数传递动态字符数组,我事先并不知道他究竟有多大,并且我希望返回经他作用的二维数组,并且覆盖原数组

Part11:如果我想向一个函数传递动态二维字符数组,我事先并不知道他究竟有多大,并且我希望返回经他作用的二维数组,并且覆盖原数组

阅读更多

没有更多推荐了,返回首页