문자열 입출력함수질문입니다
희1미햬
2023.04.01
질문 제목 : 문자열 입출력함수질문입니다밑의 소스를 실행시키고 주민번호 앞자리에 123456 을 입력하면
출력결과로
주민번호 앞 6자리를 입력하세요: 123456
이름을 입력하세요: 주민번호앞자리:123456
이 름:
이렇게 나옵니다.
그런데 12345를 입력하면 이름까지 입력받고 제대로 출력되네요
분명 변수 id는 주민번호 앞 6자리에 NULL문자 포함 7자리로 알맞게 선언해주었는데
왜 5자리밖에 읽어들이지 못하지용?
질문 내용 :
#includestdio.h
main(){
char id[7]; //주민번호앞 6자리 + NULL =7
char name[10];
fputs(주민번호 앞 6자리를 입력하세요: , stdout);
fgets(id, sizeof(id), stdin);
fputs(이름을 입력하세요: , stdout);
fgets(name, sizeof(name), stdin);
printf(주민번호 앞자리: %s\n, id);
printf(이 름: %s\n, name);
}
-
차미
아마도 개행도 포함하기 때문 일 것입니다.
주민번호6+개행1+Null1 = 8 아마도 이럴 것 입니다.