free(buf) 와 buf = 0 의 차이?
의미 char null_1 = '\0'; char null_2 = 0; char null_3 = (char)NULL; 3개 모두 결과는 동일하지만 해석방식의 차이가 있음. null_1 : \0의 아스키 값인 0이 저장됨 null_2 : 0이 바로 저장됨 null_3 : NULL은 헤더파일에 (void *)0으로 저장되어 있음.→ 0이 저장됨...
전처리 주석제거 헤더 파일 삽입 매크로 치환 및 적용 컴파일 언어의 문법 검사 static 영역(Data, BSS 영역)의 메모리 할당 어셈블리 어셈블러를 통해 어셈블리어 파일을 오브젝트 파일로 변환 링킹 링커를 통해 오브젝트 파일과 라이브러리를 묶어서 실행파일 생성 Ref. https://bradbury.tistory.com...
Description 해제된 메모리 영역을 가리키고 있는 포인터 1 2 3 char *ptr1 = (char *)malloc(sizeof(char)); ... free(ptr1); 위의 ptr1이 가리키는 메모리 영역은 free함수로 해제됐지만 ptr1은 여전히 해당 영역을 가리킨다.(변수가 삭제되지 않았기 때문) Problem 예측 불가...
컴파일의 4단계
메모리 구조
A new version of content is available.