11 - Scanf
<학습/실습하기>
main()
//sizeof : 데이터의 크기를 반환하는 연산자.
{
char charVar;
short shortVar;
int intVar;
long longVar;
float floatVar;
double doubleVar;
printf("sizeof(char) : %d\n", sizeof(char));
printf("sizeof(short) : %d\n", sizeof(short));
printf("sizeof(int) : %d\n", sizeof(int));
printf("sizeof(long) : %d\n", sizeof(long));
printf("sizeof(float) : %d\n", sizeof(float));
printf("sizeof(double) : %d\n", sizeof(double));
//scanf("%d", &shortVar)
//shortVar는 2바이트인데 %d는 int형 4바이트로 전환.
//2바이트 메모리에 4바이트를 넣으면 다른 메모리를 침범할 수 있다.
scanf("%hd", &shortVar); //%hd : Half Digit 입력을 short형으로 변환하라.
scanf("%d", &intVar); //%d : Digit 입력을 int형으로 변환하라.
scanf("%ld", &longVar); //%ld : Long Digit 입력을 long형으로 변환하라.
main()
//sizeof : 데이터의 크기를 반환하는 연산자.
{
char charVar;
short shortVar;
int intVar;
long longVar;
float floatVar;
double doubleVar;
printf("sizeof(char) : %d\n", sizeof(char));
printf("sizeof(short) : %d\n", sizeof(short));
printf("sizeof(int) : %d\n", sizeof(int));
printf("sizeof(long) : %d\n", sizeof(long));
printf("sizeof(float) : %d\n", sizeof(float));
printf("sizeof(double) : %d\n", sizeof(double));
//scanf("%d", &shortVar)
//shortVar는 2바이트인데 %d는 int형 4바이트로 전환.
//2바이트 메모리에 4바이트를 넣으면 다른 메모리를 침범할 수 있다.
scanf("%hd", &shortVar); //%hd : Half Digit 입력을 short형으로 변환하라.
scanf("%d", &intVar); //%d : Digit 입력을 int형으로 변환하라.
scanf("%ld", &longVar); //%ld : Long Digit 입력을 long형으로 변환하라.
scanf("%f", &floatVar); //%f : Float 입력을 float형으로 변환하라.
scanf("%lf", &doubleVar); //%lf : Long Float 입력을 double형으로 변환하라.
//단, printf일 경우, 인수를 전달할 때 최대 크기 인수로 전달되기 때문에,
//printf에서는 %d와 %f만 사용해도 된다.
//(short나 int는 long으로, float는 double로)
//단, printf일 경우, 인수를 전달할 때 최대 크기 인수로 전달되기 때문에,
//printf에서는 %d와 %f만 사용해도 된다.
//(short나 int는 long으로, float는 double로)
댓글
댓글 쓰기