자료구조
-
[자료구조] malloc과 포인터 복습Stage/Computer Science 2021. 6. 1. 23:21
학습 목표 포인터의 개념과 malloc 함수의 용법을 잘 이해할 수 있다. 1. 오류 파악하기 아래 코드를 보고 문제가 될 만한 지점이 어디인지 찾아보자. int main(void) { int *x; int *y; x = malloc(sizeof(int)); *x = 42; *y = 13; } malloc 함수는 할당하고 싶은 크기를 인자로 받는다. 의미를 바로 파악하지 못한 부분: *x = 42 = x의 주소로 가서 42를 저장해라. 문제가 되는 부분은 *y = 13; 이 부분이다. 위 코드에서 x에는 메모리를 할당해줬는데, y에는 아무런 액션을 취한 것이 없다. y는 포인터로는 선언되었는데, 어디를 가리킬지에 대해서는 아직 정의가 되지 않았다. 초기화 되지 않은 *y는 프로그램 어딘가를 임의로 가리키..