
면접에서 포인터에 대해 질문받았다. 아직도 헷깔리는 포인터... 면접질문은 "포인터변수의 값을 바꾸는 함수를 구현하라." 자 그럼. 변수는 포인터자료형으로 선언해줘야겠지. int* a; 그리고 값을 넣어야하니까 힙에 공간을 마련해야하고. int * a = new int; a = 주소값 여기에 *(애스터리스크)를 붙이면 주소로 찾아간다. 힙으로! *a = 쓰레기값 그러므로 a에 값을 넣으면 바뀌는게 아니라 *a로 해당 힙공간에 값을 넣어야 바뀐다. 저 뒤에서 delete 안해주면 프로그램 destroy될때 메모리샌다.... new로 힙영역에 int사이즈의 공간을 할당했으니 delete a; 로 공간 해제할 것.
C, C++
2019. 7. 9. 00:17