dereferencing null pointer1 [C/C++] 메모리 동적할당 시 malloc을 사용한다면 / dereferencing NULL pointer, Warning C6011 C 또는 C++에서 malloc 함수를 사용할 경우 아래와 같이 사용할 수 있다. int* ptr = (int*)malloc(sizeof(int)*5); *ptr = 4; 하지만 위 코드는 아래와 같이 C6011 경고를 발생시킨다. Dereferencing NULL pointer 'ptr'. 널 포인터 ptr을 역참조하고 있다라는 뜻이다. malloc 함수는 메모리 할당에 실패하면 null을 반환하는데 (ex. 메모리 공간이 부족한 경우 ) 이 경우 ptr이 null을 가지기 때문에 올바르지 않은 메모리 위치(null)에 접근하는 것을 막기위해 경고를 띄우는 것이다. 올바른 사용법은 다음과 같이 포인터 변수가 null인지 확인 후 사용한다. C++에서는 웬만하면 메모리 동적할당 시 malloc보단 new.. 2019. 11. 24. 이전 1 다음