modelable   4년 전

반례가 무엇일까요??

어느 부분이 틀렸나요?

jaehoo1   4년 전

단어의 길이가 100이라는 보장이 없습니다

modelable   4년 전

단어의 길이가 100을 넘지 않는다고 해서 101로 정의했습니다
아직 동적 메모리를 배우지 않았는데 그냥 스킵하는게 답인가요?

jaehoo1   4년 전

예를 들어 입력으로 abcde 를 넣었다고 칩시다.

그러면 name[0]=a, name[1]=b, ... , name[4]=e 겠죠

name[6], [7] ... 에는 값이 들어있지 않다고 보장할 수 있을까요?

변수(혹은 배열)에 값을 대입하지 않았다면 그 자리에 아무런 값이 들어가지 않는게 아니라

무언가의 쓰레기 값이 들어갑니다. 쓰레기 값으로 'a'~'z'에 해당하는 값이 들어갈 수 도 있는거죠.

https://ideone.com/kkEF3U

modelable   4년 전

그러면 char name[100]={'\0'}으로 문자열을 선언하면 쓰레기값으로 a와 z에 해당하는 값이 들어갈 가능성이 사라진다는 것인데 이 코드마저 틀렸다고 뜹니다

jaehoo1   4년 전

https://ideone.com/K0fZFa

예제는 넣어보셨나요?

modelable   4년 전

20번째 줄을 변경하여 정상적으로 출력하고, 쓰레기값이 들어갈 가능성도 사라졌는데 틀렸다고 뜨네요.. 막막합니다..ㅎㅎ

jaehoo1   4년 전

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