로딩
요청 처리 중입니다...

#7 C언어 사칙연산 과정에서 자료형 변환

 #7 C언어 사칙연산 과정에서 자료형 변환

double c= int a/ double b; int인 a를 double인 b로 나누면 결과는 double??int???

정답! double!!!

CPU는 같은 자료형의 두 피연산자를 대상으로만 연산이 가능하도록 설계되어 있다 (이때 a와 b를 피연산자라고 한다) 그러므로 a와 b는 컴파일 에러가 떠야 한다는 말씀 그런데 이게 어떻게 가능할까??? 답은 '자동 형 변환'이 일어나기 때문이다.

직관적으로 생각했을때 보다 넓은 수의 범위를 포함하는 자료형으로 자동 형 변환이 일어난다 int는 정수고 double은 소수점까지 포함하니까 직관적으로 int가 double로 승격이 일어나는거!!! 책을 보면 int -> long -> long long -> float -> double -> long double 순으로 자동 형 변환이 일어난다고 한다.

한 가지 더!! double c= int a/ int b; 일때 연산결과의 자료형은(double c) 피연산자의 자료형과(int a, int ...

# c언어 # 코딩