Mengembalikan Tatasusunan dalam Fungsi
Dalam C, tatasusunan bukan objek kelas pertama, yang bermaksud bahawa ia tidak boleh dikembalikan secara langsung daripada fungsi. Walau bagaimanapun, terdapat dua pendekatan biasa untuk bekerja dengan tatasusunan dalam fungsi:
Pendekatan 1: Melewati Rujukan
Seperti yang ditunjukkan dalam soalan, tatasusunan boleh dihantar kepada fungsi sebagai rujukan, membenarkan fungsi mengubah suai tatasusunan asal. Fungsi kemudiannya boleh mengembalikan kekosongan atau jenis data lain semasa masih mempunyai akses kepada tatasusunan yang dikemas kini.
Pendekatan 2: Mengembalikan Penunjuk
Sebagai alternatif, tatasusunan boleh dikembalikan daripada fungsi sebagai penunjuk kepada elemen pertama mereka. Ini pada asasnya sama seperti lulus melalui rujukan, kerana fungsi masih boleh mengakses dan mengubah suai tatasusunan asal melalui penunjuk.
Contoh Pelaksanaan:
int* fillArray(int arr[], int size) { for (int i = 0; i < size; ++i) { arr[i] = i + 1; } return arr; } int main() { int arr[5]; int* result = fillArray(arr, 5); // Access and print the modified array through the pointer for (int i = 0; i < 5; ++i) { cout << result[i] << " "; } cout << endl; return 0; }
Dalam contoh ini, fungsi fillArray mengambil rujukan tatasusunan dan saiz sebagai input dan mengembalikan penunjuk kepada elemen pertama tatasusunan yang diubah suai. Fungsi utama memanggil fungsi ini dan menyimpan hasilnya dalam penunjuk. Ia kemudian mengakses tatasusunan yang diubah suai melalui penuding ini.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengembalikan dan Mengubah Suai Tatasusunan dalam Fungsi C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!