Artikel Terbaru

4 Keunggulan Utama Bitcoin

Sebelum membicarakan tentang bitcoin, terlebih dahulu mari pahami apa yang dimaksud dengan uang. Apa sebenarnya yang dimaksud dengan uang? Pada dasarnya, uang adalah segala sesuatu yang mewakili nilai tertentu.

5 Kelebihan dan Fakta Menarik Tentang Array pada Bahasa C dan C++

Array adalah sekumpulan item yang disimpan secara berurutan dalam lokasi memori dan setiap elemennya dapat diakses secara bebas menggunakan penomoran arrayArray digunakan untuk menyimpan tipe data yang sama sebagai tipe data dalam satu kesatuan. Array juga bisa digunakan untuk menyimpan tipe data primitif seperti int, float, double, char, dan lain sebagainya. Untuk melakukan penambahan data ke tipe data string, array pada bahasa C dan C++ dapat menyimpan tipe data derivasi sebagai sebuah structpointer, dan lain sebagainya. gambar 1 memperlihatkan representasi dari array string.
Array bahasa C
Gambar 1 Array bahasa C
Keterangan gambar 1:
  • Panjang Array = 9
  • Indeks Pertama = 0
  • Indeks Terakhir = 8

Alasan Penggunaan Array
Karena variabel normal hanya bisa digunakan untuk objek data yang berukuran kecil dan ingin menyimpan data dalam ukuran besar, maka akan sangat sulit sekali dilakukan jika menggunakan variabel normal.

Deklarasi Array dalam Bahasa C dan C++

Deklarasi Array Bahasa C
Gambar 2 Array Bahasa C

Terdapat banyak cara untuk melakukan deklarasi array. Salah satunya adalah dengan penentuan tipe dan ukuran data melalui inisialisasi ataupun keduanya seperti diperlihatkan pada gambar 2.

satu, Deklarasi Array oleh Ukuran Spesifik
// Deklarasi array dengan penentuan nilai
int arr1[10];

// Atau dengan versi terdahulu dari bahasa C,
// maka dapat dideklarasikan array dengan penentuan nilai
// sebagai berikut
int n = 10;
int arr2[n];


dua, Deklarasi Array oleh Inisialisasi Elemen
// Deklarasi array dengan inisialisasi elemen
int arr[] = { 10, 20, 30, 40 }
int arr[4] = {10, 20, 30, 40}

tiga, Deklarasi Array dengan Penentuan Ukuran dan Inisialisasi Elemen
// Deklarasi array dengan penentuan ukuran dan elemen
int arr[6] = { 10, 20, 30, 40 }
int arr[] = {10, 20, 30, 40, 0, 0}

Kelebihan Penggunaan Array:
  • satu, Akses bebas dari elemen menggunakan indeks array.
  • dua, Menggunakan sedikit kode program untuk membuat sebuah array tunggal dari berbagai macam elemen.
  • tiga, Kemudahan akses terhadap semua elemen.
  • empat, traversal melalui array menjadi lebih mudah dengan menggunakan satu kali looping.
  • lima, Proses pengelompokkan data menjadi lebih mudah karena bisa dilakukan dengan menggunakan baris kode yang lebih pendek.

Kekurangan Penggunaan Array:
  • satu, Tidak memungkinkan untuk input sejumlah elemen ketika ditentukan pada saat deklarasi. 
  • dua, Penyisipan dan penghapusan elemen dapat memakan alokasi memori berlebih karena elemen tersebut perlu dikelola sesuai dengan alokasi memori baru.

Fakta Tentang Array:
satu, Akses elemen arrayElemen array diakses dengan menggunakan indeks integer. Indeks array dimulai dengan angka 0 dan berlanjut hingga nilai array tertentu seperti diperlihatkan pada gambar 3 berikut ini.

Akses Elemen Array Bahasa C
Gambar 3 Akses elemen array

Contoh pada Bahasa C

#include <stdio.h>

 

int main()

{

int arr[5];

arr[0] = 5;

arr[2] = -10;

 

arr[3 / 2] = 2

// sama seperti arr[1] = 2

 

arr[3] = arr[0];

 

printf("%d %d %d %d", arr[0], arr[1], arr[2], arr[3]);

return 0;

} 

Output:
5 2 -10 5

Contoh pada Bahasa C++

#include <iostream>

using namespace std;

 

int main()

{

int arr[5];

arr[0] = 5;

arr[2] = -10;

 

// sama seperti arr[1] = 2

arr[3 / 2] = 2;

 

arr[3] = arr[0];

 

cout << arr[0] << " " << arr[1]<< " " << arr[2] << " " << arr[3];

return 0;

} 

Output:
5 2 -10 5

dua, Tidak ada indeks yang keluar dari pemeriksaan terikat: Program berikut ini jika dikompilasi maka tidak akan mengeluarkan pesan error apapun ketika dikompilasi, namun ketika dijalankan maka akan mengeluarkan hasil output yang tidak dapat diprediksi.

Bahasa C

// This C program compiles fine

// as index out of bound

// is not checked in C.

#include <stdio.h>

 

int main()

{

int arr[2];

printf("%d ", arr[3]);

printf("%d ", arr[-2]);

return 0;

} 

Output:
2008101287 4195777

Bahasa C++

// This C++ program compiles fine

// as index out of bound

// is not checked in C.

#include <iostream>

using namespace std;

 

int main()

{

int arr[2];

 

cout << arr[3] << " ";

cout << arr[-2] << " ";

return 0;

} 

Output:
2008101287 4195777

tiga, Pada bahasa C bukan kesalahan dari kompilator untuk menginisialisasi array dengan lebih banyak elemen daripada ukuran yang telah ditentukan.

#include <stdio.h>

 

int main()

{

// Deklarasi array dengan

// inisialisasilebih banyak

// elemen daripada

// spesifikasinya.

int arr[2] = { 

10, 20, 30, 40, 50 };

return 0;

}

 

Output:
Warning:
prog.c: In function 'main':
prog.c:7:25: warning: excess elements in array initializer
int arr[2] = { 10, 20, 30, 40, 50 };
^
prog.c:7:25: note: (near initialization for 'arr')
prog.c:7:29: warning: excess elements in array initializer
int arr[2] = { 10, 20, 30, 40, 50 };
^
prog.c:7:29: note: (near initialization for 'arr')
prog.c:7:33: warning: excess elements in array initializer
int arr[2] = { 10, 20, 30, 40, 50 };
^
prog.c:7:33: note: (near initialization for 'arr')


Catatan: Program tersebut tidak dapat dikompilasi pada bahasa C++. jika program tersebut disimpan sebagai .cpp, maka program akan menghasilkan pesan error "error. too many initializers for 'int".

empat, Elemen disimpan secara berkelanjutan pada memori lokasi.

Bahasa C:

// Program Bahasa C untuk

// mendemonstrasikan elemen

// array disimpan pada lokasi

// yang berkelanjutan.

#include <stdio.h>

 

int main()

{

// Array dari integer 10. Jika

// arr[0] disimpan pada alamat

// x, maka arr[1] akan

// disimpan pada alamat x +

// sizeof(int), dan arr[2]

// akan disimpan pada alamat x

// + sizeof(int), dan

// seterusnya.

int arr[5], i;

 

printf("Ukuran integer pada"

" kompilator ini adalah"

" %lu\n", sizeof(int));

 

for (i = 0; i < 5; i++)

// Kegunaan dari tanda '&'

// yang diletakkan sebelum

// nama variabel adalah

// mengindikasikan nilai dari

// alamat variabel yang berada

// setelahnya.

printf("Alamat arr[%d] adalah"

" %p\n", i, &arr[i]);

return 0;

}

Output:
Ukuran integer pada kompilator ini adalah 4
Alamat arr[0] adalah 0x7ffd636b4260
Alamat arr[1] adalah 0x7ffd636b4264
Alamat arr[2] adalah 0x7ffd636b4268
Alamat arr[3] adalah 0x7ffd636b426c
Alamat arr[4] adalah 0x7ffd636b4270

Bahasa C++:

// Program C++ untuk

// mendemonstrasikan bahwa

// elemen array disimpan pada

// lokasi yang berkelanjutan.

#include <iostream>

using namespace std;

 

int main()

{

// Array dari integer 10. Jika

// arr[0] disimpan pada alamat

// x, maka arr[1] akan

// disimpan pada alamat x +

// sizeof(int), dan arr[2]

// akan disimpan pada alamat x

// + sizeof(int), dan

// seterusnya.

int arr[5], i;

 

cout << "Ukuran integer pada"

" kompilator ini adalah" << sizeof(int) << "\n";

 

for (i = 0; i < 5; i++)

// Kegunaan dari tanda '&'

// yang diletakkan sebelum

// nama variabel adalah

// mengindikasikan nilai dari

// alamat variabel yang berada

// setelahnya.

cout << "Alamat arr[" << i << 

"] adalah " << &arr[i] << 

"\n";

return 0;

}

Output:
Ukuran integer pada kompilator ini adalah 4
Alamat arr[0] adalah 0x7ffd636b4260
Alamat arr[1] adalah 0x7ffd636b4264
Alamat arr[2] adalah 0x7ffd636b4268
Alamat arr[3] adalah 0x7ffd636b426c
Alamat arr[4] adalah 0x7ffd636b4270

Array vs Pointer
Array dan pointer adalah dua hal yang berbeda. Kebingungan ini terjadi karena nama array mengindikasikan alamat dari elemen pertama dan array selalu melewatkan pointer.

Pengertian Vector
Vector pada C++ adalah sebuah class pada STL yang merepresentasikan array. Keunggulan dari vector daripada array adalah:
  • satu, Tidak melewatkan ukuran parameter ekstra ketika mendeklarasikan sebuah vector atau vector support dynamic size. Ukuran vector juga dapat diubah-ubah.
  • dua, Vector memiliki banyak fungsi built-in seperti hapus, tambah, dan lain sebagainya.

Beberapa Karakter dari Penggunaan Array dalam Bahasa C
  • satu, Array bisa memiliki semua tipe data kecuali void dan fungsi.
  • dua, Array dan pointer adalah dua hal yang berbeda. Keduanya terlihat mirip karena array memberikan alamat dari elemen pertama dan elemen array dapat diakses menggunakan pointer aritmatika seperti yang telah dijelaskan sebelumnya.
  • tiga, Array selalu dilewatkan sebagai pointer ke fungsi.
  • empat, Sebuah karakter array dengan double qouted string memiliki elemen sebagai '\0'.
  • lima, Seperti variabel lainnya, array dapat mengalokasikan memori pada salah satu dari tiga segmentasi data, heap, dan stack.

Komentar

  1. Apa yang dimaksud dengan array pada bahasa pemrograman C?

    BalasHapus
    Balasan
    1. Array didefinisikan sebagai kumpulan jenis item data serupa yang disimpan pada lokasi memori yang saling berdekatan. Array adalah tipe data turunan dalam bahasa pemrograman C yang dapat menyimpan tipe data primitif seperti int, char, double, float, dan lain sebagainya. Dengan menggunakan array, pengguna dapat mengakses elemen dengan mudah pada program bahasa C.

      Hapus
    2. Array adalah grup atau kumpulan dari tipe data yang sama. Contoh, array int yang digunakan untuk menampung nilai dengan tipe data integer dan array float yang digunakan untuk menampung data dengan tipe data bilangan desimal.

      Hapus
    3. Array pada bahasa C adalah kumpulan variabel yang memiliki tipe data yang sama dapat dapat digunakan untuk menyimpan sekelompok data dengan tipe data yang sama dalam sebuah array atau variabel array. Array mungkin termasuk salah satu tipe data, dengan ukuran array harus berupa nilai konstan. Juga, lokasi memori yang saling berdekatan digunakan untuk menyimpan elemen array dalam memori pada program bahasa C.

      Hapus
  2. Bagaimana array diklasifikasi pada bahas pemrograman C?

    BalasHapus
    Balasan
    1. Array diklasifikasi sebagai struktur data homogen karena menyimpan elemen dengan tipe data yang sama. Array dapat menyimpan angka, string, nilai boolean, karakter, object, dan lain sebagainya.

      Hapus

Posting Komentar

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung. :D

Catatan: setiap iklan yang ditayangkan pada blog ini bersumber dari google adsense. Dengan jenis iklan yang dipilih adalah, sebagai berikut.

POIN 1, Iklan yang ditampilkan hanya boleh berbahasa indonesia atau berbahasa inggris. Tidak menerima jenis iklan dalam bahasa yang lain selain yang telah disebutkan karena blog ini dibuat untuk para pengunjung dari negara atau orang yang berbahasa Indonesia.

POIN 2, Setiap gambar yang ditampilkan pada iklan sifatnya tidak mengganggu para pengunjung yang melihat blog, atau tidak boleh menampilkan gambar yang bersifat menjijikkan atau merangsang rasa mual.

POIN 3, Jenis iklan yang dipasang bukan merupakan iklan spam, atau berisi dan mengarahkan pengunjung ke alamat yang berbahaya atau bersifat penipuan.

POIN 4, Segala bentuk iklan tunduk dan patuh pada ketentuan dari pihak Adsense google dan pemilik blog.

POIN 5, Segala jenis iklan yang tidak bertentangan dengan poin 1-4 yang dijelaskan sebelumnya, maka iklan tersebut dapat ditampilkan pada blog.

POIN 6, Jika ada pihak ketika yang ingin memasang iklan pada blog ini secara langsung, maka dapat menghubungi pemilik blog melalui kontak 0882 3218 8316.



~ Ikatlah Ilmu dengan Memostingkannya ~

Hot Artikel

Enkapsulasi pada Java

Perbedaan stdio.h dan stdlib.h pada Bahasa C

4 Contoh Program Java dan Multiple Inheritance

6 Tahap Utama dalam Melakukan Kompilasi Program Hello World Java

3 Jenis Utama Looping pada Java