Langsung ke konten utama

Iklan





Operator Increment Decrement dan Ekspresi L-value pada Bahasa C

Pada materi ini akan jelaskan mengenai Operator Increment (Decrement) membutuhkan ekspresi L-value pada bahasa C, berikut penjelasannya:

Apakah hasil output program berikut ini?

#include<stdio.h>

 

int main()

{

int i = 10;

printf("%d", ++(-i));

 

return 0;

}

Output:
none - Kompilator error

Penjelasan
Pada bahasa C dan C++ operator pre-increment (decrement) dan post-increment (decrement) membutuhkan ekspresi nilai L sebagai operand. Memberikan nilai-R atau variabel konstanta dapat menghasilkan kesalahan kompilasi.

Pada program sebelumnya, hasil ekspresi -i pada nilai R merupakan operand dari operator pre-increment. Operator pre-increment membutuhkan L-value sebagai nilai operand. Jika tidak, maka kompilator akan menghasilkan nilai error.

Operator increment dan decrement membutuhkan pembaruan data operand setelah titik sekuensial, sehingga membutuhkan L-value. Operator unary membutuhkan -, +, dan tidak membutuhkan L-value sebagai operand. Ekspresi -(++i) adalah bernilai valid.

Namun, dalam bahasa C++ aturan yang diberikan sedikit lebih rumit karena masalah referensi. Dapat diaplikasikan operator pre/post increment (decrement) pada referensi variabel yang tidak terkualifikasi oleh const. Nilai referensi juga dapat dikembalikan lagi dari fungsi.


Iklan

Komentar

  1. Masih belum terlalu paham fungsi dari operator preincrement dan predecrement yang dijelaskan sebelumnya?

    BalasHapus
    Balasan
    1. Operator Pre-increment(++i) digunakan sebelum menetapkan nilai ke suatu variabel, dimana nilai tersebut bertambah 1. Sedangkan operator post-inrement(i++) digunakan setelah ditetapkan nilai ke nilai variabel, dimana nilai tersebut akan bertambah sebesar 1.

      Hapus
  2. Apa perbedaan antara operator pre decrement dan post decrement?

    BalasHapus
    Balasan
    1. Operator pre decrement decrement digunakan untuk mengurahi nilai variabel sebesar -1 sebelum nilai variabel tersebut ditetapkan. Sedangkan operator post decrement adalah operator yang digunakan untuk mengurangi nilai dari suatu variabel sebanyak -1 setelah nilai dari variabel tersebut ditetapkan.

      Hapus
  3. Pada dasarnya materi ini tidak perlu harus terlalu dipahami, karena fokus dari materi ini hanya pada efisiensi penulisan bahasa pemrograman bukan pada efisiensi penulisan algoritma program. Meskipun dapat memberikan dampak pada kompleksitas algoritma yang digunakan pada program.

    BalasHapus

Posting Komentar

Respon komentar 7 x 24 jam, so please be patient :D