c 실수 자료형

떵떵·2022년 5월 15일
0

c언어의 실수자료형은 3자이다.

float 4바이트 | 유효자릿수: 7

double 8바이트 | 유효자릿수: 16

long double 8바이트 | 유효자릿수: 16

float

float은 초기화하는 숫자 뒤에 f를 붙인다

	float num1 = 3.14f;

형식 지정자는 '%f' 이다.

double

double은 초기화하는 숫자 뒤에 아무것도 안 붙인다.

	double num2 = 3.44444;

형식 지정자는 '%f' 이다.

long doubel

long double은 초기화 하는 숫자 뒤에 l을 붙인다.

	long double num3 = 3.144444l;

형식 지정자는 '%Lf' 이다.

최댓값, 최솟값

#include <stdio.h>
#incldue <float.h>
int main()
{
	float num1 = FLT_MIN;
    float num2 = FLT_MAX;
    
    double num3 = DBL_MIN;
    double num4 = DBL_MAX;
    
    long double num5 = LDBL_MIN;
    long double num6 = LDBL_MAX;
    
    // double, long double은 최댓값이 너무 길어서
    //형식 지정자 %e, %Le로 표시하는것이 좋음
}

오버플로우, 언더플로우

실수 자료형에도 정수 자료형처럼 overflow, underflow가 있는데 똑같지는 않다.

기존에 오버플로우가 일어나면 최솟값에서 다시 시작하던 정수형과 달리 실수 자료형은 무한대(infinity)가 되므로 inf가 출력된다.

float의 양수 최댓값(FLT_MAX)에 1000.0을 곱하면 오버플로우가 발생한다.

float의 양수 최솟값(FLT_MIN)에 1000000000.0을 나누면 언더플로우가 발생한다.

우리가 짚어야할 요점은 자신이 표현할 데이터가 정수인지 실수인지 판단하여 구분할 수만 있다면 될 것이다.

그 외

c언어의 실수 자료형은 평소에 10진수로 실수를 저장할 수 있지만

"지수 표기법"으로 실수를 저장할 수 있다.
이건 어려우니 알아서 검색 하도록

0개의 댓글