형 변환 연산자
- 피연산자를 하나 가지며 피연산자의 값을 원하는 형태로 바꿈
- 이는 일시적으로 바꾸는 것이므로 메모리에 남아있는 피연산자의 형태나 값은 변하지 않음
(double)10 -> 10.0
(int)10.0 -> 10
#include <stdio.h>
int main(void)
{
int a =20, b = 3;
double res;
res = ((double)a) / ((double)b); // (double)을 사용해 a와 b의 값을 실수로 변환
printf("a : %d, b : %d\n", a, b);
printf("a / b : %.1lf\n", res);
a = (int)res; // (int)를 사용해 res 값에서 정수 부분만 추림
printf("(int)%.1lf의 결과 : %d\n", res, a);
return 0;
}
자동 형 변환
- 컴퓨터는 데이터의 형태에 따라 다른 연산방법을 사용하므로 피연산자가 2개 이상이라면 형태가 같아야 함.
- 컴파일 과정에서 피연산자의 형태가 다르면 이를 일치시키는 작업을 자동 형 변환이라 함.
- 자동 형 변환은 형태가 다른 데이터를 자유롭게 연산할 수 있도록 도와주지만, 예상치 못한 값의 변형이 생길 수 있으니 가능하면 형태를 같게 맞춰 사용하는 편이 좋음.
'C언어 > Study' 카테고리의 다른 글
[C언어 공부] 복합대입 연산자 (0) | 2024.07.24 |
---|---|
[C언어 공부] sizeof 연산자 (2) | 2024.07.24 |
[C언어 공부] 연산의 결과값 처리 방법 (2) | 2024.07.24 |
[C언어 공부] 논리 연산자 (0) | 2024.07.24 |
[C언어 공부] 관계 연산자 (1) | 2024.07.24 |