작성
·
1.2K
0
답변 1
0
안녕하세요,
해당 부분은 쓰레기값입니다.
정확히는, 이미 메모리에 있었던 값이지만 사용되지 않은 값, 초기화되지는 않은 값이라 보면 됩니다.
('한자'가 메모리에 저장된 것이 아니라, 메모리에 있는 0과 1들을 문자 형태로 출력하려다 보니 저런 한자의 형태가 나온 것입니다.)
컴퓨터마다 메모리의 상태는 조금씩 다르므로 쓰레기값의 결과도 다르게 나옵니다.
가령 저의 환경의 경우, 질문자님과 동일한 소스코드를 돌렸을 때 아래와 같이 나오게 됩니다.
질문자님께서 str1 변수의 크기를 10만큼 잡아주셨지요?
하지만 str1 변수를 초기화하실 때에 그보다 큰 크기인 "Hello, World" 만큼을 할당해주셨습니다.
그렇기에 str1 변수 외부에 있었던 쓰레기값이 출력되는 것입니다.
감사합니다.