Re: strlen(ptr)의 의미
, 도장_ 관리자님이 작성홧팅!
메모리가 왜 깨끗하지 않냐면 안 쓴다고 메모리를 지우는 게 더 느리고, 시간이 오래 걸리니까요.
할당하고, 기록하고, 읽으면 되고, 할당을 해제하면 지우지 않고 그냥 놔두는 겁니다.
하드디스크도 똑같습니다. 1TB짜리 파일을 삭제한다고 모두 0으로 지우면 삭제하는데 6시간 이상 걸릴 겁니다. 그래서 실제 파일은 두고, 파일을 관리하는 장부에서만 삭제합니다. 장부에서만 삭제하니까 삭제된 파일이라고 해도 복구가 가능한 겁니다. 장부만 지웠지, 데이터는 그대로 있으니까요. 데이터까지 소거하는 프로그램을 쓰면 몇 시간이 걸리죠.(Harddisk Wiper로 검색하면 무료 프로그램 많은데, 잘못 쓰면 복구도 못하고 다 날아갑니다)
메모리도 똑같습니다. 게다가 메모리는 전원을 끄면 정보가 사라지죠.
효율을 위해 할당하고, 바로 씁니다. 초기화가 필요할 때만 초기화를 하고요.
할당하면 자동으로 0으로 다 채워주고, 해제하면 자동으로 다 0으로 채워주는 현대 운영체제나 파일시스템이 있는지는 모르겠지만, 기본 동작 원리는 저렇습니다.
윈도우, 리눅스, 맥, 안드로이드, iOS, 무엇을 쓰든 메모리는 항상 지저분한 상태이고, 파일 시스템도 지저분한 상태입니다.