Kenapa setelah dipanggil, nilai variabel bisa berubah?
Tidak semua bagian program harus menghasilkan nilai. Ada yang tugasnya hanya mengubah data. Inilah prosedur.
Dalam bahasa C:
-
Tidak ada kata khusus untuk prosedur
-
Prosedur dibuat seperti fungsi, tetapi:
-
Tipe kembalian
void -
Artinya: tidak mengembalikan nilai
-
Contoh:
Parameter pada Prosedur
Prosedur boleh:
- Memiliki parameter
- Tidak memiliki parameter
Yang membedakan prosedur dari fungsi adalah:
-
Prosedur bisa mengubah nilai parameter
Mengubah Nilai Parameter
Jika prosedur ingin mengubah nilai suatu variabel:
- Parameter ditulis dengan tanda
* - Saat dipanggil, variabel diberi tanda
&
Untuk tahap awal:
- Cukup pahami bahwa
*dan&dipakai agar nilai variabel bisa berubah - Penjelasan detailnya ada di materi Pointer
Contoh Konsep Prosedur (Tanpa Kode Rumit)
-
plus1
-
Menambah nilai variabel sebesar 1
-
Setelah prosedur dijalankan, nilainya berubah
-
-
plusd
-
Menambah nilai variabel sesuai angka tertentu
-
Nilai variabel ikut berubah
-
-
swap
-
Menukar nilai dua variabel
-
Setelah dijalankan, kedua nilai berubah
-
Penjelasan :
void tambahSatu→ prosedur (tidak mengembalikan nilai)int *nilai→ alamat variabel agar nilainya bisa diubah&angka→ mengirim alamat variabel ke prosedur- Setelah prosedur dipanggil, nilai variabel berubah
Ilustrasi:
Angka awal = 5 → diproses prosedur → menjadi 6