728x90
[Do it C++ 완전정복_ 62p]
l-value와 r-value
- l-value
- 메모리 상의 위치를 가진 값을 의미한다.
- 메모리 주소를 가진 값을 의미하며, 변수나 배열 요소, 참조 등이 해당된다.
- 식 외에서도 유효하며, 메모리 위치를 참조할 수 있다.
int x = 666; // x는 l-value, 666은 r-value
int *p = &x; // l-value x의 주소를 p에 저장
x = 100; // 좌변에 올 수 있음
- r-value
- 임시 값, 메모리 주소가 없는 값을 의미한다.
- 주로 대입 연산자의 우변에 나타나며, 값 또는 상수, 연산 결과가 해당된다.
- 식 외에서는 유효하지 않으며, 좌변에는 올 수 없다.
int y;
y = 666; // 666은 r-value, y는 l-value
y = x + 5; // x + 5는 r-value
'C++ > C++ 문법' 카테고리의 다른 글
| C++ 연산자와 연산자 우선순위 (0) | 2025.10.13 |
|---|---|
| C++ 리터럴 (Literal) (0) | 2025.10.13 |
| C++ 기본 자료형과 메모리 크기 (sizeof) (0) | 2025.10.13 |
| C++ 입출력 (cin, cout, getline, endl) (0) | 2025.10.13 |
| C++ 특징과 프로그램 빌드 과정 (0) | 2025.10.13 |