char * str1;
str1 = (char *) calloc (10, sizeof(char));
 
 for(i = 0; i < 9; i++)
 {
  str1[i] = 'A' + i;
 }
 printf("%s \n", str1);

인 경우에 A부터 ~ I까지 출력이 되고 i < 10 이상으로 바꾸면 쓰레기 값이 출력이 되잖아요.

근데 str1 = (char *) calloc (10, sizeof(char)); 이 부분을
str1 = (char *) calloc (10, 10); 으로 같은 사이즈와 수로 바꾸면
 i < 50으로 해도 출력이 되는데 이건 뭐에요??