03-2 데이터 입력

marshmelody·2024년 1월 18일
0

scanf 함수

: 키보드에서 입력 받은 데이터를 연산이 가능한 정수나 실수로 변환시켜주는 함수

scanf 함수의 사용법

int a;
char grade;
char name[20];

scanf("%d", &a);
scnaf("%c", &grade);
scanf("%s", name);

문자열을 저장할 때만 앞에 &를 붙이지 않는다.
(한글은 한 자당 2바이트 차지)

scanf 에서는 char형 변수에 %d를 사용하거나 short형 변수에 %d를 사용하는 것이 불가능하다.
printf에서는 이미 공간이 할당되고 값이 저장된 상태이므로 char이나 short를 %d로 변환해도 괜찮았지만, scanf에서는 아직 값이 저장되지 않은 상태에서 %d로 변환할 경우, char에 4바이트 공간을 사용하게 되기 때문에 char형 변수가 할당하지 않은 메모리를 침범하는 문제가 발생한다. 따라서 char형 변수에는 %c만, short형 변수에는 %hd만 사용 가능하다.

profile
소프트웨어 전공생 백엔드 개발자 도전기

0개의 댓글

관련 채용 정보