2025.12.29

박민재 (Daype)·2025년 12월 29일

포인터 복습

포인터를 사용할때는 항상 예외처리를 생각해주어야 한다. null값에 접근해서 값을 변경시도할시 치명적인 오류 발생

L벨류와 R벨류 관련해서 함수의 매개변수를 살펴보면 Func(int *a) 이런식으로 선언하게 될 수 있다. Func(&b)를 인자로 넘겨줬다고 가정했을때 함수 내부에선 int *a = &b라는 내용이 생략되어서 진행되게된다 내부복사가 일어나는과정, 그리고 이렇게 값을 받은 후
받아온 매개변수의 값을 접근하고싶으면 *a = 4 이런식으로 값을 변경해주게 되는데
이때 선언을 int *a 로 했다면 헷갈릴 수 있다. (내가 그랬다) 하지만 변수앞에 자료형이 붙어있으면 자료형+포인터가 되어 int*형을 가진 a가 되어서 매개변수로 주소값을 넘겨받은 값이 대입되는것이었다.

자료형+포인터형과 변수이름앞에붙는 포인터는 아예 다른존재 둘이공존할 수 없음
ex) int* p != *p
*p는 값을 참조, int* p는 인트포인터형 변수p 주소값을 가지고있음 헷갈리는거 조심


0개의 댓글