• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

scanf 사용 시 커서 위치 질문

23.03.15 17:25 작성 조회수 409

1

int i=0;

scanf("%d", &i);

printf("Value is %d\n", i)

를 실행하고 i에 7을 입력하면

7

Value is 7

이라고 나오는데 scanf후에 printf를 실행하면 자동으로 줄이 바뀌는 것인지 궁금합니다.

 

답변 1

답변을 작성해보세요.

1

Soobak님의 프로필

Soobak

2023.03.15

안녕하세요, 답변 도우미 Soobak 입니다. 😀

질문해주신 내용의 '줄이 바뀌는 것' 이 아래 사진에 첨부된 줄바꿈 부분이 맞으실까요?

#include <stdio.h>

int main() {

  int i = 0;
  scanf("%d", &i);
  printf("Value is %d\n", i);

  return 0;
}
  • 출력 결과:
    image

만약, 그렇다면 scanf() 함수를 호출 한 후 printf() 함수를 실행하여 자동으로 줄이 바뀌는 것이라기 보다, 콘솔창에 입력을 하면서 enter 키로 개행 문자 를 입력하며 입력을 마무리하였기 때문에 줄이 바뀌는 것으로 생각하시면 될 것 같습니다.

만약, 콘솔창에서 ctrl + DEOF 신호를 통하여 입력을 마무리한다면, 다음과 같이 줄 바꿈이 일어나지 않습니다.

  • EOF 신호로 입력 종료
    image

EOF(End Of FIle) 신호와 콘솔창 입력 종료에 대해서는 강의 8.2 파일의 끝 3:21 부분에서 교수님께서 설명해주시므로, 추후 해당 섹션을 공부하실 때 자연스럽게 이해가 되실 것 같습니다.

현재 진도에서는 "콘솔창에서 enter 키로 개행 문자를 입력하며 입력을 종료하였기 때문에, 줄 바꿈이 일어났다" 는 정도로만 이해를 하신 후 학습을 이어나가시는 것을 추천드려봅니다. 😀

답변이 되셨길 바라며, 궁금한 점이 있으시면 언제든지 편하게 질문 남겨주시면 감사하겠습니다. 화이팅!