반응형
c++ 자료형의 프로모션
사칙연산이나 대소 비교 등의 이항 연산자들은 두개의 피연산자를 받는다.
만약 피연산자의 자료형이 다르거나 자료형의 범위가 너무 작은 경우 컴파일러들은 이들을 같은 자료형으로 변환해서 계산하고 이를 프로모션이라고 한다.
c++에서 적용되는 규칙은 다음과 같다.
- 한쪽은 정수형이고 한쪽은 실수형일 경우: 정수형이 실수형으로 변환된다.
- 양쪽 다 정수형이거나 양쪽다 실수형인 경우: 넓은 범위를 갖는 자료형으로 변환된다.
- 양쪽 다 int형보다 작은 정수형인 경우: 양쪽 다 int형으로 반환된다.
- 부호 없는 정수형과 부호 있는 정수형이 섞여 있을 경우 : 부호 없는 정수형으로 변환된다.
연산 될 때 원하지 않는 값이 나오지 않는다면, 조심하도록 하자!
반응형
'알고리즘 > 이론정리' 카테고리의 다른 글
세그먼트 트리 (2) | 2023.08.04 |
---|---|
LIS - lower_bound 로 푸는 이유?(다이나믹 프로그래밍) (2) | 2023.02.21 |
그래프 - 최단경로에서 이동 경로 찾기 (1) | 2023.01.25 |
크루스칼 알고리즘 (1) | 2023.01.23 |
플로이드 워셜 알고리즘이란? - 원리를 바탕으로 (0) | 2023.01.22 |