C ++将数组传递给函数然后将其传递给另一个函数

时间:2017-01-18 16:48:27

标签: c++

我尝试使用main函数中的数组,该函数传递给函数并进入另一个函数。以下是我试图做的简化版本。

我无法将func2()放入主要功能中,因为我所做的代码要求我在void func()中执行某些操作,然后应用于void func2()

#include <iostream>
using namespace std;

void func(char arr[2])
{
    func2(arr);
}

void func2(char arr[2])
{
    cout << arr[0] << arr[1];
}

int main()
{
    char arr[2] = {1,2};
    func(arr);
}

修改 似乎问题是函数的顺序而不是我最初认为的数组的错误。

#include <iostream>
using namespace std;

void func2(char arr[2])
{
    cout << arr[0] << arr[1];
}

void func(char arr[2])
{
    func2(arr);
}

int main()
{
     char arr[2] = {1,2};
     func(arr);
}

1 个答案:

答案 0 :(得分:0)

尝试,交换你的功能:

#include <iostream>
using namespace std;

void func2(char arr[2])
{
    cout << arr[0] << arr[1];
}

void func(char arr[2])
{
    func2(arr);
}



int main()
{
    char arr[2] = {1,2};
    func(arr);
}

问题在于您引用了func2 func对此一无所知的plug_session_memcached

另外,尝试使用指针而不是将整个数组复制到函数中。它效率更高。