Tutorial Bahasa C/C++: Operator Increment ++ dan Decrement —


Operator Unary adalah operator yang mengandung satu buah operand. Contoh pada operator logika adalah gerbang NOT yang berfungsi membalik nilai logika dari TRUE menjadi FALSE atau sebaliknya.

Pada bahasa C terdapat operator ++ yang berfungsi untuk menaikkan (menambah dengan 1) nilai yang tersimpan pada sebuah variabel, dan operator — yang berfungsi untuk menurunkan (mengurangi dengan 1) nilai yang tersimpan pada sebuah variabel.

Berikut ini adalah screenshot program ChSciTE (IDE freeware untuk interpreter Ch) dengan contoh program penggunaan operator ++ dan — untuk operasi increment dan decrement.

image

Pada program di atas, nilai awal variabel COUNTER adalah 50. Setelah penerapan operator ++, nilai variable COUNTER bertambah 1 menjadi 51. Dan setelah penerapan operator ++ yang berikutnya, nilai COUNTER bertambah 1 lagi menjadi 52.

Selanjutnya, setelah baris perintah COUNTER–, nilai variabel COUNTER menjadi 51 (berkurang 1). Dan setelah perintah –COUNTER, maka nilai variabel COUNTER kembali menjadi 50.

Pada dasarnya penggunaan operator ++ dan operator — dapat diganti dengan perintah sebagai berikut:

COUNTER = COUNTER + 1;   // == COUNTER++  ATAU  ++COUNTER

Dan operator — dapat diganti dengan perintah:

COUNTER = COUNTER – 1;   // == COUNTER–  ATAU  –COUNTER

Jika kita perhatikan program di atas, maka ada 2 macam cara penggunaan dari operator ++ dan operator –. Yang pertama ditulis dibelakang atau setelah nama-variabel (POST), dan yang kedua ditulis didepan atau sebelum nama-variabel (PRE).

Dari hasil running contoh program di atas, kedua model penulisan memiliki efek yang sama terhadap variabel yang dikenainya. Namun tidak demikian halnya jika operator ++ dan – digunakan dalam sebuah ekspresi aritmatika. Perhatikan contoh program dan hasil running-nya berikut ini.

image

Perhatikan bahwa terdapat perbedaan hasil dari model penulisan POST dan PRE pada operator ++ dan –.

Menarik, bukan?

Jadi pada perintah Y = (X++ + 10), variabel Y diisi dengan penjumlahan antara X dan 10, oleh karenanya hasilnya adalah Y = 60. Jadi variabel X ketika ekspresi aritmatika tersebut diproses adalah masih bernilai 50. Nilai X berubah setelah baris tersebut selesai dieksekusi, tapi belum berubah ketika baris tersebut dieksekusi.

Berbeda dengan model PRE, perintah Y = (++X + 10) menghasilkan nilai Y = 51. Artinya, nilai variabel X sudah berubah (ditambah 1) ketika baris perintah tersebut dieksekusi. Oleh karenanya nilai Y adalah 61.

Ayo belajar C!

🙂

2 comments

  1. teknocrat · Agustus 13, 2014

    Mantaps gan, oya jika ada yang sekiranya mebutuhkan tambahan referensi, silakan mampir saja dimari gan, suguhan lengkap dengan contoh programmnya,
    http://gatewawan.blogspot.com/2014/07/mengenal-operator-dalam-cpp.html

    Best Regard,
    Teknocrat

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s