제 목 23강 동적할당 관련
작성자 에코3a3b 등록날짜 2023-04-24 00:09:35 / 조회수 : 23
강좌명 [패키지] 개발자 기본과정
첨부파일
  • Print 함수에서 char* szTemp= new char;을 했으니,

    delete[] szTemp나 delete szTemp를 하려고 했는데 HEAP CORRUPTION ERROR가 발생하는데

    혹시 이유를 알려주실 수 있나요?

  • 작성자 : 게임클래스 / 등록날짜 : 2023-04-24 17:43:02
  • 안녕하세요 게임클래스 입니다.

    해당 선생님께 답변을 받았습니다. 다만 질문내용만으로는 정확한 문제 원인을 파악하기 어렵기 때문에 전체 코드가 필요하시다고 합니다.

    댓글로 전체 코드 달아주시면 선생님께서 어느 부분에서 문제가 발생했는지 확인가능하시다고 합니다.

     

    -----------------------------------------------------------------------------------------------------
    확인해본 결과에 대해 말씀 드리자면

    코드 자체는 문제가 없어보입니다. 컴파일해서 실행도 해 보았는데,

    에러도 없고 워닝도 없고 문제없이 게임이 실행 및 완료가 되었습니다.

    해당 부분에 대해서 추측되는 부분을 적어드리자면

    동적할당 해제시 발생하는 에러였던거 같은데 

    동적할당하고나서 szTemp에 다른문자열 대입했을때

    new char면 한칸짜리 문자열로 만들어서 해제시 발생하는 문제로 추측이 됩니다

    이같은 경우는 동적할당시 문자열의 범위를 배열 또는 문자로 명확하게 정의하고

    delete를 해주는 방법이 있습니다.

     

     

     

댓글 2개
  • 에코3a3b [ 2023-05-04 13:49:50 ]
  • 압축파일 올려두었습니다.
  • 에코3a3b [ 2023-04-29 20:27:44 ]
  • 아 23강이었네요.
    소스코드 올려두었습니다.