Perbezaan Antara Penunjuk Dan Array

Perbezaan Antara Penunjuk Dan Array
Perbezaan Antara Penunjuk Dan Array

Video: Perbezaan Antara Penunjuk Dan Array

Video: Perbezaan Antara Penunjuk Dan Array
Video: T2 BAB 7.1 KEELEKTRIKAN ....samb 2024, Mungkin
Anonim

Penunjuk vs Array

Penunjuk adalah jenis data yang menyimpan rujukan ke lokasi memori (iaitu pemboleh ubah penunjuk menyimpan alamat lokasi memori di mana beberapa data disimpan). Susun atur adalah struktur data yang paling biasa digunakan untuk menyimpan koleksi elemen. Sebilangan besar bahasa pengaturcaraan menyediakan kaedah untuk menyatakan larik dan elemen akses dalam larik dengan mudah.

Apa itu Pointer?

Penunjuk adalah jenis data yang menyimpan alamat lokasi memori di mana beberapa data disimpan. Dengan kata lain, penunjuk menyimpan rujukan ke lokasi memori. Mengakses data yang disimpan di lokasi memori yang dirujuk oleh penunjuk disebut dereferensi. Semasa melakukan operasi berulang seperti melintasi pokok / tali, pencarian meja, dan lain-lain, menggunakan penunjuk akan meningkatkan prestasi. Ini kerana penghentian referensi dan penyalinan pointer lebih murah daripada menyalin dan mengakses data yang ditunjukkan oleh pointer. Penunjuk nol adalah penunjuk yang tidak menunjukkan apa-apa. Di Java, mengakses penunjuk nol akan menghasilkan pengecualian yang disebut NullPointerException.

Apa itu Array?

Yang ditunjukkan dalam gambar 1, adalah sekeping kod yang biasanya digunakan untuk menyatakan dan memberikan nilai pada array. Gambar 2 menggambarkan bagaimana rupa array dalam memori.

nilai [0] = 100;

nilai [1] = 101;

nilai [2] = 102;

nilai [3] = 103;

nilai [4] = 104;

Gambar 1: Kod untuk menyatakan dan menetapkan nilai pada array

100 101 102 103 104 Indeks: 0 1 2 3 4

Gambar 2: Array yang tersimpan dalam memori

Kod di atas mentakrifkan array yang dapat menyimpan 5 bilangan bulat dan mereka diakses menggunakan indeks 0 hingga 4. Satu sifat penting bagi array ialah, keseluruhan array diperuntukkan sebagai satu blok memori dan setiap elemen mendapat ruang tersendiri dalam array. Setelah tatasusunan ditentukan, ukurannya tetap. Oleh itu, jika anda tidak pasti mengenai ukuran array pada masa penyusunan, anda harus menentukan susunan yang cukup besar untuk berada di sisi selamat. Tetapi, selalunya, kita sebenarnya akan menggunakan lebih sedikit elemen daripada yang telah kita peruntukkan. Oleh itu, sejumlah besar memori sebenarnya terbuang. Sebaliknya jika "array yang cukup besar" sebenarnya tidak cukup besar, program akan terhenti.

Apakah perbezaan antara Penunjuk dan Susunan?

Pointer adalah jenis data yang menyimpan alamat lokasi memori di mana beberapa data disimpan, sementara Array adalah struktur data yang paling sering digunakan untuk menyimpan koleksi elemen. Dalam bahasa pengaturcaraan C, pengindeksan array dilakukan menggunakan aritmetik penunjuk (iaitu unsur the array x akan setara dengan * (x + i)). Oleh itu, dalam C, set penunjuk yang menunjuk ke sekumpulan lokasi memori yang berturut-turut, dapat dianggap sebagai array. Selanjutnya, terdapat perbezaan bagaimana pengendali ukuran beroperasi pada penunjuk dan tatasusunan. Ketika diterapkan pada array, operator sizeof akan mengembalikan keseluruhan ukuran array, sedangkan ketika diterapkan pada pointer, itu akan mengembalikan hanya ukuran pointer.

Disyorkan: