Hasil Operator Koma Sebagai Nilai I pada Bahasa C
Menggunakan hasil dari operator koma sebagai nilai I adalah tidak valid pada bahasa C. Tetapi pada C++, hasil dari operator koma dapat digunakan sebagai nilai I jika operand pada bagian kiri dari operator koma adalah nilai I.
Contoh, jika dilakukan kompilasi program dalam bahasa C++, maka program tersebut dapat berjalan dengan baik dan dapat mencetak nilai b=30. Dan jika dilakukan kompilasi program dengan bahasa C, maka akan memberikan pesan error dalam proses kompilasi progrram.
#include<stdio.h>
int main()
{
int a = 10, b = 20;
(a, b) = 30;
// Karena variabel b adalah
// l-value, maka statement
// tersebut adalah bernilai
// valid pada C++, namun tidak
// pada bahasa C.
printf("b = %d", b);
getchar();
return 0;
}
Output (C++):
b = 30
Masih kurang paham tentang maksud dari materi pada artikel ini..
BalasHapusApa yang dimaksud dengan l-value pada artikel ini?
BalasHapusL-value: "l-value" adalah istilah yang mengacu pada lokasi memori yang mengidentifikasi suatu objek dalam bahasa pemrograman. l-value dapat muncul sebagai sisi kiri atau sisi kanan dari operator assignment (=). l-value selring direpresentasikan sebagai suatu identifier dalam bahasa pemrograman. l-value yang dapat dimodifikasi tidak boleh memiliki tipe nilai dalam bentuk array, tipe tidak lengkap, atapun tipe dengan atribut konstanta.
Hapusl-value dan r-value mengacu pada sisi kiri dan siskanan dari operator assignment. Konsep l-value mengacu pada persyaratan bahwa nilai operan pada sisi kiri operator assignment dapat dimodifikasi, yang biasanya berupa nilai variabel.
Hapusl-value itu maksudnya left value, tak kira apa -__-
BalasHapus