C言語では、配列は関数のローカルスコープ内で宣言されると、その関数が終了した時点でメモリが解放されます。 そのため、配列を直接返すことはできません。 代わりに、配列の先頭要素のアドレスを指すポインタを返すことで、配列のデータを関数外で利用することが可能になります。