scanf_s() 함수에서 큰따옴표 사이에 서식 지정자 %d를 넣으면 정수형 값을 입력받겠다는 의미입니다. 쉼표 뒤에는 입력받은 값을 저장할 위치를 넣습니다. 여기서는 input 변수죠. 그런데 input 변수 앞에 &(앰퍼샌드, ampersand)가 있습니다. &는 메모리의 주소를 나타낼 때 사용합니다. 즉, &input은 input 변수가 할당된 메모리의 주소를 의미하며, 이 주소에 키보드로 입력받은 값을 넣으라는 뜻입니다. 메모리 주소와 관련한 내용은 7.2 포인터란에서 더 자세히 알아보겠습니다. 지금은 변수 앞에 &를 붙여 입력값을 저장할 위치를 표시한다고만 알아 두세요.
그러면 값을 입력받아서 출력해 볼까요?
2.5.1 scanf.c
int main(void) {
int input;
printf("값을 입력하세요 : ");
scanf_s("%d", &input);
printf("입력값 : %d\n", input);
return 0;
}
실행결과 |
값을 입력하세요 : 2000
입력값 : 2000
|