내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
포인터와 참조는 모두 주소 개념입니다. 포인터는 메모리 조각을 가리키며 그 내용은 가리키는 메모리의 주소입니다. 참조는 특정 메모리 조각에 대한 별칭입니다.
프로그램은 포인터 변수에 메모리 영역을 할당하지만 참조에는 할당하지 않습니다.
포인터를 사용할 경우 앞에 *를 추가하면 참조를 바로 사용할 수 있습니다.
참조는 정의될 때 초기화되며 나중에 변경할 수 없습니다. 즉, 참조된 객체는 변경할 수 없지만 포인터 객체는 변경할 수 있습니다.
널 참조는 없지만 널 포인터는 있습니다. 이는 포인터를 사용하는 것보다 참조를 사용하는 코드를 더 효율적으로 만듭니다. 참조를 사용하기 전에 참조의 유효성을 테스트할 필요가 없기 때문입니다. 대조적으로, 포인터는 null이 되지 않도록 항상 테스트되어야 합니다.
변수의 크기를 얻으려면 참조에 "sizeof"를 사용하고, 변수 주소의 크기를 얻으려면 포인터에 "sizeof"를 사용하십시오.
이론적으로 포인터 수준 수에는 제한이 없지만 참조 수준은 하나만 있습니다. 즉, 참조에 대한 참조는 없지만 포인터에 대한 포인터는 있을 수 있습니다. int **p //법적, int