c++从函数返回数组的方法代码

c++如何从函数返回数组?

目前创新互联已为上千多家的企业提供了网站建设、域名、雅安服务器托管、网站托管、服务器托管、企业网站设计、禹城网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

C++ 从函数返回数组

C++ 不允许返回一个完整的数组作为函数的参数。但是,您可以通过指定不带索引的数组名来返回一个指向数组的指针。

如果您想要从函数返回一个一维数组,您必须声明一个返回指针的函数,如下:

int * myFunction()

{

.

.

.

}

另外,C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static 变量。

现在,让我们来看下面的函数,它会生成 10 个随机数,并使用数组来返回它们,具体如下:

实例

#include 

#include 

#include 

 

using namespace std;

 

// 要生成和返回随机数的函数

int * getRandom( )

{

 static int r[10];

 

 // 设置种子

 srand( (unsigned)time( NULL ) );

 for (int i = 0; i < 10; ++i)

 {

  r[i] = rand();

  cout << r[i] << endl;

 }

 

 return r;

}

 

// 要调用上面定义函数的主函数

int main ()

{

  // 一个指向整数的指针

  int *p;

 

  p = getRandom();

  for ( int i = 0; i < 10; i++ )

  {

    cout << "*(p + " << i << ") : ";

    cout << *(p + i) << endl;

  }

 

  return 0;

}

当上面的代码被编译和执行时,它会产生下列结果:

624723190

1468735695

807113585

976495677

613357504

1377296355

1530315259

1778906708

1820354158

667126415

*(p + 0) : 624723190

*(p + 1) : 1468735695

*(p + 2) : 807113585

*(p + 3) : 976495677

*(p + 4) : 613357504

*(p + 5) : 1377296355

*(p + 6) : 1530315259

*(p + 7) : 1778906708

*(p + 8) : 1820354158

*(p + 9) : 667126415

以上就是c++如何从函数返回数组的详细内容,如果大家还有任何补充可以联系创新互联小编。


名称栏目:c++从函数返回数组的方法代码
文章地址:http://myzitong.com/article/jhpggg.html