본문 바로가기

개발공부/C

printf()함수

#include <stdio.h>

int main()
{
    printf("\n");
    int n_printed = printf("Counting!\n");
    printf("%u\n", n_printed);
    return 0;
}
Counting!
9

printf()의 리턴값은 출력한 문자갯수이다.

float n1 = 3.14;	//4 bytes
double n2 = 1.234;	//8 bytes
int n3 = 1024;		//4 bytes

printf("%d %d %d\n", n1, n2, n3);

스택에 쌓인다 번호순서로.

printf()에서 부동소수점이 들어오면 모두 double로 변환한다.(float -> double)

따라서

n3

n2

n1

으로 쌓이고 크기는

4

8

8

로 쌓인다.

#include <stdio.h>

int main()
{
	float n1 = 3.14;
    double n2 = 1.234;
    int n3 = 1024;
    
    printf(%f %f $d\n\n", n1, n2, n3);
    
    //note the warnings in output window
    printf("%d %d %d\n\n", n1, n2, n3); 		//4,4,4	(N, N, N)
    printf("%lld %lld %d\n\n", n1, n2, n3);		//8,8,4	(N, N, Y)
    printf("%f %d %d\n\n", n1, n2, n3);			//8,4,4	(Y, N, N)
    printf("%f %lld %d\n\n", n1, n2, n3);		//8,8,4	(Y, N, Y)
    
    return 0;
}
3.140000 1.234000 1024

1610612736 1074339512 -927712936

4614253070451212288 4608236261112822104 1024

3.14000 -927712936 1072938614

3.140000 4608236261112822104 1024