살아가는 이야기

printf에서 long long, long double 출력하기 본문

컴퓨터, 풀어그림

printf에서 long long, long double 출력하기

우균 2013. 3. 13. 15:13

C 언어에 long long(아주 긴 정수) 타입과 long double 타입이 추가되었지만 이를 출력하는 방법을 몰라서 제대로 사용하지 못하는 경우가 있다. printf에서 이를 출력하려면 각각 %lld, %lf를 사용하면 된다. long 타입 값은 %ld로 출력하면 된다. 구체적인 예를 보이면 다음과 같다.

#include <stdio.h>

int main() {
    long ln = 123456789L;
    long long lln = 1234567890123456789LL;
    double dx = 1.234567890123456789;
    long double ldx = 1.234567890123456789L;
    printf("ln = %d\n", ln);
    printf("ln = %ld\n", ln);
    printf("lln = %lld\n", lln);
    printf("dx = %.9f\n", dx);
    printf("dx = %.19f\n", dx);
    printf("ldx = %.19Lf\n", ldx);
    return 0;
}

이를 gcc(버전 4.5.0)로 컴파일하여 실행한 결과는 다음과 같다.

ln = 123456789
ln = 123456789
lln = 1234567890123456789
dx = 1.234567890
dx = 1.2345678901234566904
ldx = 1.2345678901234567890
Comments