0
몇 가지 추가 기능 (끝에 추가 요소 삽입, 지정된 a 요소 찾기, 요소 제거)으로 목록을 만들려고합니다. 제거를 찾으면 괜찮습니다. 그러나 목록 자체 (및 입력 내용)에 문제가 있습니다. 목록을 만들고 그 요소를 인쇄 할 때 오류가 발생합니다.
이것은 실제 코드입니다. 좀 더 읽기 쉽도록 몇 가지 기능을 제거했습니다. 이상의 구성 요소는 프로그램이 충돌 프로그램의 시작 부분 또는 삽입 추가 요소 중 작성된 에러 제공된다
스레드 1 : EXCBADACCESS (코드 = EXCI386GPFLT)
리스트가 인쇄 될 때 때로는 'name'이 예를 들어 -> \ 360-`과 같은 문자/숫자의 이상한 조합으로 인쇄됩니다.
감사합니다. 나는 malloc에 그런 결함이 있다는 것을 어떻게 깨닫지 못했는지 모른다. 그러나 나는 숯불로 물건을 얻지 못한다. 문제가 무엇입니까? –
'c'의 실제 문자열 길이는 strlen이 반환하는 것보다 항상 1 문자 길다. 거기에 '\ 0'종료 문자가 있기 때문이다. 길이 검사로 '50'을 사용하여 문자열을 복사 할 때 최대 크기를 수용하려면 실제로 51 자 배열이 필요합니다. 배열의 마지막 요소가 항상 '\ 0'인지도 확인해야합니다. – Serge