lvalue (locator value) đại diện cho đối tượng chiếm một vị trí xác định trong bộ nhớ (có địa chỉ).
rvalue được định nghĩa bằng cách loại trừ: mọi biểu thức hoặc là lvalue hoặc là rvalue, do đó rvalue là biểu thức không đại diện cho đối tượng chiếm vị trí bộ nhớ xác định.
Ví dụ: phép gán mong đợi lvalue ở vế trái, nên sau hợp lệ:
int i = 10;
Nhưng này không:
int i; 10 = i;
Vì i có địa chỉ trong bộ nhớ nên là lvalue. Còn 10 không có vị trí bộ nhớ xác định nên là rvalue. Gán giá trị của i cho 10 không có nghĩa.