kys0521   3년 전

char arr[101]; 이 부분을 string arr;

for(int i=0; arr[i]!=NULL; i++) 이 부분에서  arr[i]!=NULL 을 i<arr.length()로 바꾸니 문제  통과는 되긴 하는데,

올려놓은 코드는 왜 틀렸다고 나오는지 궁금해서 질문올려봅니다.

umc1997   3년 전

님 코드에서 arr[101]에 접근 하는 순간

out of range 에러가 떠서 프로그램이 팅깁니다.

arr[101]값은 Null이 아니라 아에 접근 할 수 없는 값입니다.

ckdgus2482   3년 전

저 코드는 arr[101]에 접근하지 않습니다.

입력 최대크기가 100이므로 널문자 고려하여 배열 크기를 101로 잡아두었으므로 arr입력을 받으면 문자열 끝에 널문자가 들어있습니다.

그리고 런타임 에러면 런타임 에러라고 뜨지 틀렸습니다로 나오지도 않구요.

아무리 봐도 틀린게 없는 것 같아서 그대로 복붙해서 제출해보니 맞았다고 나오는데요...
확인을 제대로 하고 제출했던 코드를 그대로 올려서 질문하시기 바랍니다.

kys0521   3년 전

아.. 이렇게 말씀해주시니 제가 어느부분에서 착각을 했는지 알겠네요.

좋은지적 감사합니다.

댓글을 작성하려면 로그인해야 합니다.