작성
·
235
0
char str1[3]="HEL"
printf("%c, %c, %c", str1[0], str1[1], str1[2]);
했을때 출력 결과과, H,E,L 모두 잘 되는데 칸이 3개이고 HEL이 다 들어갔는데 NULL은 어디 간건가요?
애초에 [3]으로 하고 = "HEL" 하면 오류가 나야하는것이 아닌가요?
답변 1
0
본래 딱 맞게 문자열을 입력하면
에러가 발생하지는 않지만,
이는 예상하신대로 올바른 입력이 아닙니다.
널문자가 저장되지 않기 때문이지요.
보여주신 코드는 한 글자 한 글자씩 출력하기 때문에 문제가 없어 보이지만
문자열 형식으로 출력하면 아래와 같이 올바르게 출력되지 않음을 알 수 있습니다.