Pena dan Array dalam C

Halo, para pemula pemrogram! Hari ini, kita akan melanjutkan perjalanan yang menarik ke dunia pointer dan array dalam C. Jangan khawatir jika istilah ini terdengar mengintimidasi - pada akhir tutorial ini, Anda akan dapat mengendalikannya seperti seorang ahli!

C - Pointers and Arrays

Array dalam C

mari mulai dengan array. Bayangkan Anda memiliki sejumlah mobil mainan. Daripada menjadikan mereka tersebar di seluruh kamar Anda, Anda memutuskan untuk mengatur mereka rapi di rak. Itulah sebenarnya apa array dalam pemrograman - sebuah cara untuk menyimpan banyak item dengan jenis yang sama dalam cara yang terorganisir.

Meng деклаresikan Array

Dalam C, kita deklarasikan array seperti ini:

int numbers[5];

Baris ini membuat sebuah array bernama numbers yang dapat menampung 5 integer. Itu seperti mengatakan, "Saya ingin sebuah rak yang dapat menampung 5 mobil mainan."

Kita juga dapat menginisialisasi array dengan nilai:

int numbers[5] = {1, 2, 3, 4, 5};

Ini seperti memasukkan 5 mobil mainan khusus ke rak kita segera.

mari lihat contoh yang lebih praktis:

#include <stdio.h>

int main() {
int scores[5] = {85, 92, 78, 95, 88};

printf("Nilai yang ketiga adalah: %d\n", scores[2]);

return 0;
}

Dalam contoh ini, kita menyimpan 5 nilai ujian. Perhatikan bahwa kita mengakses nilai ujian ketiga menggunakan scores[2]. Ini karena indeks array di C dimulai dari 0, bukan 1. Itu seperti bagaimana lantai pertama di beberapa negara dianggap lantai 0, bukan lantai 1.

Pointer dalam C

Sekarang, mari bicara tentang pointer. Jika array seperti rak, pointer seperti label atau tanda yang menunjukkan di mana hal-hal disimpan dalam memori.

Pointer adalah variabel yang menyimpan alamat memori dari variabel lain. Itu seperti memiliki peta yang memberitahu Anda secara tepat di mana mencari sesuatu.

Ini adalah bagaimana kita deklarasikan pointer:

int *ptr;

Baris ini membuat sebuah pointer bernama ptr yang dapat menyimpan alamat sebuah integer.

mari lihat contoh sederhana:

#include <stdio.h>

int main() {
int x = 10;
int *ptr = &x;

printf("Nilai x adalah: %d\n", x);
printf("Alamat x adalah: %p\n", (void*)ptr);

return 0;
}

Dalam contoh ini, kita membuat sebuah integer x dan sebuah pointer ptr yang menyimpan alamat x. Operator & digunakan untuk mendapatkan alamat variabel.

Operator Dereferensi dalam C

Operator dereferensi * digunakan untuk mengakses nilai yang disimpan di alamat yang dipegang oleh pointer. Itu seperti menggunakan peta untuk benar-benar pergi ke lokasi dan melihat apa yang ada di sana.

Ini adalah contoh:

#include <stdio.h>

int main() {
int x = 10;
int *ptr = &x;

printf("Nilai x adalah: %d\n", x);
printf("Nilai yang ditunjuk ptr adalah: %d\n", *ptr);

*ptr = 20;  // Mengubah nilai x melalui pointer

printf("Nilai baru x adalah: %d\n", x);

return 0;
}

Dalam contoh ini, kita menggunakan *ptr untuk mengakses dan mengubah nilai x melalui pointer.

Pointer dan Array

Sekarang, mari lihat bagian yang benar-benar menarik. Dalam C, terdapat hubungan dekat antara pointer dan array. Sebenarnya, nama array adalah pointer ke elemen pertamanya!

mari lihat contoh:

#include <stdio.h>

int main() {
int numbers[5] = {1, 2, 3, 4, 5};
int *ptr = numbers;  // ptr sekarang menunjuk ke elemen pertama numbers

for(int i = 0; i < 5; i++) {
printf("Elemen %d: %d\n", i, *ptr);
ptr++;  // Pindah ke elemen berikutnya
}

return 0;
}

Dalam contoh ini, kita membuat sebuah array dan sebuah pointer yang menunjuk ke elemen pertama array. Kita kemudian menggunakan aritmetik pointer untuk bergerak melalui array dan mencetak setiap elemen.

Catatan yang Perlu Diperhatikan

Berikut adalah beberapa titik penting yang perlu diingat tentang pointer dan array dalam C:

Titik Deskripsi
Indeks Array Indeks array dimulai dari 0 di C
Deklarasi Pointer Gunakan * saat mendeklarasikan pointer (misal, int *ptr;)
Operator Address-of Gunakan & untuk mendapatkan alamat variabel
Operator Dereferensi Gunakan * untuk mengakses nilai yang ditunjuk pointer
Hubungan Array-Pointer Nama array adalah pointer ke elemen pertamanya
Aritmetik Pointer Menambahkan 1 ke pointer akan memindahnya ke elemen berikutnya

Ingat, bekerja dengan pointer memerlukan perhatian yang seksama. Itu adalah fitur yang kuat di C, tetapi dengan kekuatan yang besar datang tanggung jawab besar!

Saya harap tutorial ini telah membantu Anda untuk mempelajari pointer dan array. Terus latihan, dan segera Anda akan dapat mengendalikan memori seperti seorang pemrogram C yang benar! Selamat coding!

Credits: Image by storyset