언어/c

문자열이 scanf를 통하여 초기화 될시 남는 배열은 어떻게 될까?

leo_____lee 2018. 1. 26. 13:57

보통 우리는 c에서 string을 입력하기 위하여 다음과같이 변수를 선언하고 초기화하여 준다.

char str[100];

scanf("%s",str);

그런데 저렇게 사용하고 printf를 통하여 출력시 내가 입력한 값만 딱 나오게 된다.

신기하지 않은가??

그렇다면 내가 입력한 배열 뒤에 나머지 배열뒤는 어떻게 되는것일까??

코드를 입력하여 직접 확인하여 보았다.

직접 해보니 내가 선언한 배열까지는 공백이 들어가고 그이후는 쓰레기값이 들어가있음을 확인할 수 있었다.