ホームページ >バックエンド開発 >C#.Net チュートリアル >C++で関数から配列を返す方法
#c 関数から配列を返すにはどうすればよいですか?
C 関数から配列を返す
C 関数パラメータとして完全な配列を返すことはできません。ただし、インデックスなしで配列名を指定すると、配列へのポインターを返すことができます。
関数から 1 次元配列を返したい場合は、次のようにポインタを返す関数を宣言する必要があります:
int * myFunction() { . . . }
さらに、C はアドレスを返すことをサポートしていません。ローカル変数が静的変数として定義されている場合を除き、関数外のローカル変数の。
ここで、次の関数を見てみましょう。この関数は、次のように 10 個の乱数を生成し、配列を使用して返します。コードがコンパイルされて実行されると、次の結果が生成されます:
#include <iostream> #include <cstdlib> #include <ctime> 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; }
以上がC++で関数から配列を返す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。