인프런 커뮤니티 질문&답변

조건희님의 프로필 이미지

작성한 질문수

홍정모의 따라하며 배우는 C언어

4.5 기호적 상수와 전처리기

2.0f와 2.0의 차이

작성

·

867

1

숫자 뒤에 붙는 f의 유무는 float형과 double형의 구분으로 알고 있습니다.  circum=2.0*PI*radius로 코딩을 했을 때 에러가 발생해서 2.0f로 바꿨더니 에러가 사라졌습니다.

변수가 float형으로 고정되었을 때에는 모든 실수뒤에 f를 붙어주지 않으면 오류가 발생하나요? 

2.0f 와 2.0을 컴퓨터가 받아들일 때 어떠한 차이가 있는지 잘 모르겠습니다 ..ㅠㅠ

답변 2

2

안소님의 프로필 이미지

2021. 02. 19. 18:25

float 은 4byte, double은 8byte라는 것을 생각해보면 float에 2.0을 대입하려는건 4byte의 더 작은 공간에 8byte  데이터를 넣으려고 하는 행위와도 같겟습니다. 그래서 경고를 주는 것이에요! 

0

홍정모님의 프로필 이미지
홍정모
지식공유자

2021. 02. 19. 01:28

float와 double은 메모리 크기에서 차이가 나기 때문에 발생할 수 있는 오류를 미리 방지하기 위해서 float와 double을 엄격히 구분하는 쪽으로 발전하고 있습니다. 실수 정밀도에 대해서는 '3.12 부동소수점의 한계'에서 설명드렸습니다.