반응형
C언어는 동일한 자료형끼리 연산이 가능하다. 만약 서로 다른 자료형끼리 연산을 한다면 서로 데이터크기(byte)가 다르기 때문에 오차가 발생하여 연산이 불가능하다.
그래서 접미구에 자료형을 붙여 정확한 연산을 할 수 있다. (아래 참고)
https://ansan-survivor.tistory.com/1222
만약 int a = 3.0 또는 double b = 5를 넣는다면, 자료형이 맞지 않아도 알아서 출력이 된다.
3.0 은 기본적으로 "double" 자료형이지만, a는 int 자료형이기 때문에 자동으로 int로 변환되어 3이 출력된다.
마찬가지로 아래 5도 int 이지만, b가 double이기 때문에 5.000000 으로 출력된 것이다.
하지만 C언어에서는 강제로 형변환하는 기능이 있다.
매우 간단하다 그저 앞에 괄호 + 자료형 을 추가하면 된다.
-> (자료형)변수
-> (자료형)값
#include <stdio.h>
int main(void)
{
// 강제로 형 변환하기
int a = (int)3.0;
double b = (double)5;
printf("%d, %f", a, b);
return 0;
}
<알아두기>
- 바이트가 큰 자료형이 우선시 된다. ( 크기가 큰거(double)와 작은게(int) 있을 때 큰것으로 바뀜 )
반응형
'C언어 \ C++' 카테고리의 다른 글
[C언어] C언어 삼 항 연산자 (한줄 조건 연산자), 한줄짜리 간단한 연산자 (0) | 2022.01.29 |
---|---|
[C언어] C언어 함수 만들기, 함수 구조, 함수 템플릿, 함수 작동 순서 (0) | 2022.01.25 |
[C언어] C언어 소수 자료형 float와 double의 차이점. ('double'에서 'float'(으)로 잘립니다.) (0) | 2022.01.25 |
[C언어] C언어 배열(array) 반복문(for문)으로 모두 출력하기 (0) | 2022.01.23 |
[C언어] C언어 야구게임 예제 코드 (0) | 2022.01.16 |