컴퓨터 지식 네트워크 - 컴퓨터 시스템 - 포인터에 대한 포인터와 함수 매개변수로서의 포인터에 대한 참조를 이해하는 방법을 설명해주세요.

포인터에 대한 포인터와 함수 매개변수로서의 포인터에 대한 참조를 이해하는 방법을 설명해주세요.

질문의 본질은 포인터와 참조의 차이입니다. 다음 링크를 참조하세요.

/question/1638411952021780300.html?oldq=1

그런데 질문에서 포인터가 가리키고 참조하는 것은 또 다른 포인터 변수입니다. 포인터의 포인터가 pp이고, 포인터의 참조가 r이고, 가리키는 포인터가 p라고 가정하면 다음과 같습니다.

int a; //Target 정수 변수

int *p=amp ;a;//첫 번째 수준 포인터

int **pp=amp;p;//두 번째 수준 포인터

int amp;R=amp; p;//포인터 참조

그들의 관계는 논리 기호로 표시됩니다:

pp-gt; p의 값은 a의 주소입니다. 즉) pp는 p를 가리키고, p는 a를 가리키며, PP 자체도 메모리 공간을 차지해야 하므로 PP도 자체 주소를 갖습니다.)

R=p -gt;a (R은 p의 주소를 나타내고 p의 값은 a의 Address입니다. 즉, R은 p의 별칭이고 p는 a를 가리키며, 여기서 R의 값은 p의 주소입니다. R 그 자체는 메모리 공간을 차지할 필요가 없고 자신의 주소도 없습니다)

따라서 참조 변수와 포인터 변수 차이점은 참조 자체는 메모리 공간을 차지하지 않는 반면 포인터 변수는 메모리를 차지해야 한다는 점입니다. 공간(모든 변수는 메모리 공간을 차지해야 하며, 메모리 공간을 차지하는 모든 항목에는 주소가 있어야 합니다).

아직도 이해가 안 되신다면 물어보셔도 됩니다.

上篇: 휴대폰 번개 비디오 블랙 스크린 下篇: 쿤룬산 생수는 장기간 마시기에 적합합니까?
관련 내용