Array masuk C++: Deklarasi, Inisialisasi & Pointer (Contoh)

⚡ Ringkasan Cerdas

Sebuah array di C++ Array adalah kumpulan elemen dengan tipe data yang sama yang disimpan di lokasi memori yang berdekatan. Di sini Anda akan belajar cara mendeklarasikan, menginisialisasi, dan mengakses array, tipe-tipe array, serta kelebihan dan kekurangannya.

  • 📚 Apa itu: Array menyimpan beberapa nilai dengan tipe yang sama dalam satu variabel.
  • 🔢 Pernyataan: Deklarasikan array dengan tipe, nama, dan ukuran, seperti int nums[5];.
  • 🎯 Pengindeksan: Elemen array diakses berdasarkan indeks, dimulai dari 0.
  • 🧩 Inisialisasi: Anda dapat mengatur nilai array saat deklarasi menggunakan tanda kurung kurawal { }.
  • ️ Pengorbanan: Array memberikan akses terindeks yang cepat tetapi memiliki ukuran tetap.
  • 🤖 Bantuan AI: Alat AI seperti GitHub Copilot menghasilkan perulangan array dan logika secara instan.

Array masuk C++

Apa itu Array?

Array adalah struktur data yang menyimpan elemen dengan tipe data yang sama secara berurutan. A C++ array memiliki ukuran tetap.

Anda dapat melihat array sebagai kumpulan variabel dengan tipe data serupa. Daripada mendeklarasikan setiap variabel dan memberikan nilai satu per satu, Anda dapat mendeklarasikan satu variabel (array) dan menambahkan nilai dari berbagai variabel ke dalamnya. Setiap nilai tambah pada array diidentifikasi oleh indeks.

Mengapa kita memerlukan array?

Array sangat penting dalam bahasa pemrograman apa pun. Mereka menyediakan cara yang lebih nyaman untuk menyimpan variabel atau kumpulan data dengan tipe data serupa secara bersamaan daripada menyimpannya secara terpisah. Setiap nilai array akan diakses secara terpisah.

Deklarasikan array di C++

Deklarasi array di C++ melibatkan menyatakan tipe serta jumlah elemen yang akan disimpan oleh array. Sintaksis:

type array-Name [ array-Size ];

Aturan untuk mendeklarasikan array berdimensi tunggal di C++.

  • Tipe: Tipenya adalah tipe elemen yang akan disimpan dalam array, dan harus valid C++ tipe data.
  • Nama Array: Nama array adalah nama yang akan ditetapkan ke array.
  • Ukuran Array: Ukuran array adalah jumlah elemen yang akan disimpan dalam array. Itu harus bilangan bulat dan lebih besar dari 0.

Misalnya, Anda dapat membuat array bernama age dan menyimpan usia 5 siswa sebagai berikut:

int age[5];

Array age akan menyimpan 5 bilangan bulat yang mewakili usia siswa yang berbeda.

Inisialisasi Array

Inisialisasi array adalah proses menugaskan/menyimpan elemen ke array. Inisialisasi dapat dilakukan dalam satu pernyataan atau satu per satu. Perhatikan bahwa elemen pertama dalam array disimpan pada indeks 0, sedangkan elemen terakhir disimpan pada indeks n-1, di mana n adalah jumlah total elemen dalam array.

Dalam kasus array age, elemen pertama akan disimpan pada indeks 0, sedangkan elemen terakhir akan disimpan pada indeks 4.

Mari kita gunakan array age untuk mendemonstrasikan bagaimana inisialisasi array dapat dilakukan:

int age[5] = {19, 18, 21, 20, 17};

Jumlah total elemen dalam {} } tidak boleh melebihi nilai yang dinyatakan dalam [ ]. Elemen 19 berada pada indeks 0, 18 pada indeks 1, 21 pada indeks 2, 20 pada indeks 3, dan 17 pada indeks 4. Jika Anda tidak menyatakan jumlah elemen yang akan disimpan dalam array di dalam [ ], maka array hanya akan cukup besar untuk menampung elemen yang ditambahkan dalam {}. Misalnya:

int age[] = {19, 18, 21, 20, 17};

Pernyataan di atas akan membuat array yang sama persis dengan yang sebelumnya. Anda juga dapat menetapkan satu elemen ke array menggunakan indeksnya. Misalnya:

age[3] = 20;

Pernyataan di atas akan menyimpan nilai 20 pada indeks 3 dari array bernama age. Artinya 20 akan menjadi 4th elemen larik.

Jenis Array

Ada dua jenis C++ array:

  • Array satu dimensi
  • Array Multi Dimensi
  • Penunjuk ke Array

Array Satu Dimensi

Ini adalah array yang item datanya disusun secara linier dalam satu dimensi saja. Ini biasa disebut array 1-D. Sintaksis:

datatype array-name[size];
  • Nama array adalah nama array.
  • Ukurannya adalah jumlah item yang akan disimpan dalam array.

Sebagai contoh:

#include <iostream>
using namespace std;

int main()
{
	int age[5] = { 19, 18, 21, 20, 17 };
	for (int x = 0; x < 5; x++)
	{
		cout <<age[x]<<"\n";
	}
}

Keluaran:

Array Satu Dimensi

Berikut ini tangkapan layar kodenya:

Array Satu Dimensi

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() yang didalamnya logika program harus ditambahkan.
  4. Awal dari isi fungsi main().
  5. Mendeklarasikan array bernama age untuk menyimpan 5 bilangan bulat. 5 bilangan bulat juga telah diinisialisasi.
  6. Buat variabel integer x menggunakan for loop.
  7. Awal dari badan perulangan for.
  8. Menggunakan variabel loop x untuk mengulangi nilai array age dan mencetaknya di konsol. “\n” adalah karakter baris baru dan dicetak di baris baru setelah setiap iterasi.
  9. Ujung tubuh untuk loop.
  10. Akhir dari isi fungsi main().

Array Multi Dimensi

Ini adalah larik yang item datanya disusun membentuk larik larik. Array multidimensi dapat memiliki sejumlah dimensi, namun array dua dimensi dan tiga dimensi adalah hal yang umum. Sintaksis:

datatype array-name[d1][d2][d3]...[dn];

Nama array adalah nama array yang memiliki n dimensi. Misalnya:

Array Dua Dimensi

Array 2D menyimpan data dalam daftar dengan array 1-D. Array 2D adalah matriks dengan baris dan kolom. Untuk mendeklarasikan array XNUMXD, gunakan sintaks berikut:

type array-Name [ x ][ y ];

Jenisnya harus valid C++ tipe data. Lihat array 2D sebagai tabel, di mana x menunjukkan jumlah baris sedangkan y menunjukkan jumlah kolom. Ini berarti Anda mengidentifikasi setiap elemen dalam array 2D menggunakan bentuk a[x][y], dengan x adalah jumlah baris dan y adalah jumlah kolom di mana elemen tersebut berada.

Berikut ini contoh cara menginisialisasi array 2D:

int a[2][3] = {  
   {0, 2, 1} ,   /*  row at index 0 */
   {4, 3, 7} ,   /*  row at index 1 */
   };

Dalam contoh di atas, kita memiliki array 2D yang dapat dilihat sebagai matriks 2×3. Terdapat 2 baris dan 3 kolom. Elemen 0 dapat diakses sebagai a[0][1] karena terletak pada perpotongan antara baris berindeks 0 dan kolom berindeks 1. Elemen 3 dapat diakses sebagai a[1][2] karena terletak di perpotongan baris berindeks 1 dan kolom berindeks 2.

Perhatikan bahwa kami hanya menambahkan kurung kurawal untuk membedakan baris elemen yang berbeda. Inisialisasi juga bisa dilakukan sebagai berikut:

int a[2][3] = {0, 2, 1, 4, 3, 7};
   };

Berikut ini C++ contoh menunjukkan cara menginisialisasi dan melintasi array 2D:

#include <iostream>
using namespace std;
int main() 
{
	// a 2x3 array
	int a[3][2] = { {0, 2}, {1, 4}, {3, 7} };

	// traverse array elements

	for (int i=0; i<3; i++)
		for (int j=0; j<2; j++) 
		
		{
			cout << "a[" <<i<< "][" <<j<< "]: ";
			cout << a[i][j] << endl;
		}
	return 0;
}

Keluaran:

Array Dua Dimensi

Berikut ini screenshot dari kode di atas:

Array Dua Dimensi

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() yang kodenya harus ditambahkan.
  4. Awal dari isi fungsi main().
  5. Sebuah komentar. Itu C++ kompiler akan melewatkan ini.
  6. Mendeklarasikan array 2D yang terdiri dari 3 baris dan 2 kolom. Item juga telah ditambahkan ke array.
  7. Sebuah komentar. Itu C++ kompiler akan melewatkan ini.
  8. Membuat variabel saya menggunakan for loop. Variabel ini akan mengulangi indeks baris array.
  9. Membuat variabel j menggunakan for loop. Variabel ini akan mengulangi indeks kolom array.
  10. Mulai dari badan loop.
  11. Cetak nilai variabel i dan j pada konsol di dalam tanda kurung siku pada konsol.
  12. Cetak nilai yang disimpan pada indeks [i][j] dari array a.
  13. Akhir dari badan loop.
  14. Fungsi main() harus mengembalikan nilai integer jika program berjalan dengan baik.
  15. Akhir dari isi fungsi main().

Array Tiga Dimensi

Array 3D adalah array dari array. Setiap elemen dalam array 3D diidentifikasi oleh sekumpulan 3 indeks. Untuk mengakses elemen array 3D, kami menggunakan tiga loop for. Misalnya:

#include<iostream>
using namespace std;
void main()
{
	int a[2][3][2] = {{{4, 8},{2, 4},{1, 6}}, {{3, 6},{5, 4},{9, 3}}};
	cout << "a[0][1][0] = " << a[0][1][0] << "\n";
	cout << "a[0][1][1] = " << a[0][1][1] << "\n";
}

Keluaran:

Array Tiga Dimensi

Berikut ini tangkapan layar kodenya:

Array Tiga Dimensi

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() yang didalamnya logika program harus ditambahkan.
  4. Awal dari isi fungsi main().
  5. Mendeklarasikan array 3D bernama ukuran 2x3x2. Nilai array juga telah diinisialisasi.
  6. Mengakses item yang disimpan pada indeks [0] [1] [0] dari array dan mencetaknya di konsol.
  7. Mengakses item yang disimpan pada indeks [0] [1] [1] dari array dan mencetaknya di konsol.
  8. Akhir dari isi fungsi main().

Penunjuk ke Array

A petunjuk adalah variabel yang menyimpan alamat. Selain menggunakan pointer untuk menyimpan alamat suatu variabel, kita juga dapat menggunakannya untuk menyimpan alamat sel array. Nama array selalu menunjuk ke elemen pertamanya. Perhatikan deklarasi yang diberikan di bawah ini:

int age[5];

Age adalah pointer ke $age[0], alamat elemen pertama dari array bernama age. Perhatikan contoh berikut:

#include <iostream>
using namespace std;
int main()
{
	int *john;

	int age[5] = { 19, 18, 21, 20, 17 };

	john = age;

	cout << john << "\n";

	cout << *john;
	
}

Keluaran:

Penunjuk ke Array

Perhatikan bahwa nilai pertama dari output di atas mungkin menghasilkan nilai yang berbeda tergantung pada alamat yang ditetapkan ke elemen pertama array di memori komputer Anda.

Berikut ini tangkapan layar kodenya:

Penunjuk ke Array

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() yang didalamnya logika program harus ditambahkan.
  4. Awal dari isi fungsi main().
  5. Mendeklarasikan variabel pointer bernama *john.
  6. Mendeklarasikan array bilangan bulat bernama age untuk menyimpan 5 bilangan bulat. Nilai bilangan bulat juga telah diinisialisasi.
  7. Menetapkan variabel john nilai alamat item yang disimpan dalam indeks pertama array age.
  8. Mencetak nilai variabel john, yang merupakan alamat item yang disimpan dalam indeks pertama array age.
  9. Mencetak nilai pertama yang disimpan dalam array age.
  10. Akhir dari isi fungsi main().

Nama array dapat digunakan sebagai pointer konstan, dan sebaliknya juga berlaku. Ini berarti Anda dapat mengakses nilai yang disimpan pada indeks 3 array age dengan *(age + 3). Misalnya:

#include <iostream>
using namespace std;

int main() {
	// an array of 5 elements.
	int age[5] = { 19, 18, 21, 20, 17 };
	int *p;

	p = age;

	// output array values

	cout << "Using pointer: " << endl;

	for (int x=0; x<5; x++) {
		cout << "*(p + " << x << ") : ";
		cout << *(p + x) << endl;
	}
	cout << "Using age as address: " << endl;

	for (int x = 0; x < 5; x++) {
		cout << "*(age + " << x << ") : ";
		cout << *(age + x) << endl;
	}

	return 0;
}

Keluaran:

Penunjuk ke Array

Berikut ini tangkapan layar kodenya:

Penunjuk ke Array

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() dan awal isi fungsi main().
  4. Sebuah komentar. Itu C++ kompiler akan melewatkan ini.
  5. Mendeklarasikan array bernama age untuk menyimpan 5 bilangan bulat.
  6. Membuat penunjuk bilangan bulat p.
  7. Menetapkan p nilai alamat elemen pertama array age.
  8. Sebuah komentar. Itu C++ kompiler akan melewatkan ini.
  9. Cetak beberapa teks di konsol.
  10. Buat bilangan bulat x menggunakan perulangan for. Tanda { menandai awal badan perulangan for.
  11. Cetak nilai x yang digabungkan dengan beberapa teks lain di konsol.
  12. Cetak nilai *(p + x) di konsol.
  13. Akhir dari badan perulangan for.
  14. Cetak beberapa teks di konsol.
  15. Buat variabel x menggunakan perulangan for. Tanda { menandai awal badan perulangan for.
  16. Cetak nilai x dari 0 hingga 4 di samping beberapa teks lainnya.
  17. Cetak nilai *(usia + x).
  18. Akhir dari badan perulangan for.
  19. Kembalikan nilai jika program berhasil dijalankan.
  20. Akhir dari isi fungsi main().

Mengakses nilai Array

Elemen-elemen array diakses menggunakan indeksnya masing-masing. Indeks elemen yang akan diakses ditambahkan dalam tanda kurung siku [ ] tepat setelah nama array. Misalnya:

int john = age[2];

Dalam contoh di atas, kami hanya menyatakan bahwa usia john disimpan di indeks 2 dari array bernama usia. Artinya umur john adalah 3rd nilai dalam usia array. Ini selengkapnya C++ contoh yang menunjukkan cara mengakses dan mencetak nilai ini:

#include<iostream>
using namespace std;
int main()
{
	int age[5] = { 19, 18, 21, 20, 17 };
	int john = age[2];
	cout << "The age of John is:"<<john;
}

Keluaran:

Mengakses nilai Array

Berikut ini tangkapan layar kodenya:

Mengakses nilai Array

Code Penjelasan:

  1. Menyertakan file header iostream dalam kode kita. Ini akan memungkinkan kita membaca dan menulis ke konsol.
  2. Menyertakan namespace std untuk menggunakan kelas dan fungsinya tanpa memanggilnya.
  3. Memanggil fungsi main() yang kodenya harus ditambahkan.
  4. Awal dari isi fungsi main().
  5. Mendeklarasikan array bernama age untuk menyimpan 5 elemen integer.
  6. Mengakses nilai yang disimpan pada indeks 2 array age dan menyimpan nilainya dalam variabel bernama john.
  7. Mencetak nilai variabel john di konsol bersama teks lainnya.

Keuntungan dari Array di C++

Inilah kelebihan/manfaat menggunakan Array di C++:

  • Elemen array dapat dilintasi dengan mudah.
  • Mudah untuk memanipulasi data array.
  • Elemen array dapat diakses secara acak.
  • Array memfasilitasi optimasi kode; karenanya, kita dapat melakukan banyak pekerjaan dengan menggunakan lebih sedikit kode.
  • Mudah untuk mengurutkan data array.

Kekurangan Array di C++

  • Sebuah array memiliki ukuran tetap; karenanya, kami tidak dapat menambahkan elemen baru ke dalamnya setelah inisialisasi.
  • Mengalokasikan lebih banyak memori daripada kebutuhan menyebabkan pemborosan ruang memori, dan alokasi memori yang lebih sedikit dapat menimbulkan masalah.
  • Jumlah elemen yang akan disimpan dalam suatu array harus diketahui terlebih dahulu.

Pertanyaan Umum Demo Slot

Sebuah array di C++ adalah kumpulan elemen dengan tipe data yang sama yang disimpan di lokasi memori yang berdekatan. Ini memungkinkan Anda untuk menyimpan dan mengakses banyak nilai menggunakan satu nama variabel dan sebuah indeks.

Deklarasikan sebuah array dengan tipe data, nama, dan ukuran dalam tanda kurung siku, misalnya int numbers[5];. Ini akan memesan ruang untuk lima bilangan bulat di memori.

Akses elemen menggunakan indeksnya dalam tanda kurung siku, seperti numbers[0] untuk elemen pertama. Indeks array dimulai dari 0 dan berlanjut hingga ukuran dikurangi satu.

Inisialisasi array saat deklarasi menggunakan tanda kurung kurawal, seperti int nums[3] = {1, 2, 3};. Anda juga dapat menetapkan nilai nanti berdasarkan indeks, seperti nums[0] = 5;.

C++ Mendukung array satu dimensi untuk daftar sederhana, dan array multidimensi seperti array dua dimensi untuk tabel atau grid nilai.

Array memberikan akses terindeks yang cepat dan menyimpan data secara efisien, tetapi ukurannya tetap dan tidak dapat bertambah setelah inisialisasi.

Asisten AI seperti GitHub Copilot menghasilkan deklarasi array, menulis perulangan untuk mengisi atau mencari array, dan menyarankan perbaikan untuk kesalahan indeks di luar batas saat Anda mengetik.

Ya. Alat berbasis AI menandai akses di luar batas, kesalahan selisih satu angka, dan array yang belum diinisialisasi, serta menyarankan alternatif yang lebih aman seperti std::vector untuk data dinamis.

Ringkaslah postingan ini dengan: