lvalue (locator value) แสดงถึงออบเจ็กต์ที่ครอบครองตำแหน่งที่ระบุได้ในหน่วยความจำ (เช่น มีที่อยู่)
rvalues ถูกกำหนดโดยการขยับ ทุก expression เป็น lvalue หรือ rvalue ดังนั้น rvalue คือ expression ที่ไม่แสดงถึงออบเจ็กต์ที่ครอบครองตำแหน่งที่ระบุได้ในหน่วยความจำ
ตัวอย่าง การกำหนดค่า (assignment) คาดหวัง lvalue เป็น operand ซ้าย ดังนี้จึงถูกต้อง -
int i = 10;
แต่นี้ไม่ถูกต้อง -
int i; 10 = i;
เพราะ i มีที่อยู่ในหน่วยความจำและเป็น lvalue ในขณะที่ 10 ไม่มีตำแหน่งหน่วยความจำที่ระบุได้ จึงเป็น rvalue การกำหนดค่าของ i ให้ 10 จึงไม่มีความหมาย