-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
README
내에 설명되지 않은 경우의 처리에 대한 질문
#32
Comments
|
감사합니다! |
@col000 |
ptr = NULL 일 때 에러 메시지도 출력해야 하나요? 해야 한다면 double free와 같은 메시지로 해야 하는지도 궁금합니다. |
에러 출력 형태는 자유이며, 진행 프로그램에 문제가 없으면 됩니다. |
죄송하지만 확인차 다시 질문 드립니다. |
해당 내용은 README 참고 부탁드립니다.
|
라고 되어 있는데, freed memory block을 free하는 경우(double free)에는 오류 메시지가 무조건 출력되어야 하고, 그 외의 경우( 그런데 |
@thisisWooyeol @Prown0
따라서 free 명령을 같은 index에 대해 두 번 호출하게 되면, 첫 번째 명령 이후에 포인터를 NULL로 초기화하기 때문에 double free 상황(이미 free된 포인터를 mm_free에 다시 인자로 주는 상황)이 아닌, 단순히 NULL을 mm_free에 인자로 주어 호출한 상황에 불과합니다. 그렇기에 제공된 |
감사합니다! |
@kwonsw055 그렇다면 mm_free 에 파라미터로 입력된 ptr 가 NULL일때는 print를 하지 않고 아무동작도 수행하지 않는것이 맞을까요? |
앞서 다른 TA분이 말씀드린 바와 같이, mm_free(NULL)의 경우에는 아무 동작도 수행하지 않으면 됩니다.
|
앞서 제가 질문드렸을 때, 뒤이은 답변에서 "에러 출력 형태는 자유" 라고 말씀하셨어서 혼란스러웠던게 사실입니다. 그래서 이미 TA 분들께서 항상 시간/요일 가리지 않고 도움 주셔서 대단히 감사하게 생각하고 있습니다. 🙇 다시 한번 감사드립니다. |
혼란이 있었다면 사과드립니다. |
README
내에 설명되지 않은 2가지 경우에 대하여 질문 드립니다.mm_malloc()
의 인자로0
이 들어오는 경우Linux 설명서에서는
malloc()
의 인자size
가0
인 경우NULL
이나, 나중에free()
의 인자가 되어도 성공적으로 작동하는 특별한 포인터를 반환한다고 되어 있습니다.mm_malloc()
에서도 똑같이 구현하면 되는지, 아니면 오류를 출력하여야 할지 궁금합니다.mm_free()
의 인자로NULL
이 들어오는 경우Linux 설명서에서는
free()
의 인자ptr
가NULL
인 경우 어떤 실행도 하지 않는다고 되어 있습니다. 그런데README
에서는 그러한 설명이 없어서NULL
인 경우에 오류를 출력하여야 할 것 같은데, 둘 중 어느 방식으로 구현하여야 할지 궁금합니다.읽어 주셔서 감사합니다.
The text was updated successfully, but these errors were encountered: