C에서 포인터 인수 전달이 값으로 전달됩니까?
C에서 포인터 인수 전달은 실제로 값으로 전달됩니다. 이는 포인터 변수의 내용(포인팅된 개체의 주소)의 복사본이 함수에 전달된다는 의미입니다.
함수 본문 내의 포인터 값에 대한 수정 사항은 외부의 원래 포인터에 영향을 주지 않습니다. 기능. 그러나 가리키는 객체의 값에 대한 변경 사항은 반영됩니다.
포인터 대 포인터를 함수 인수로 사용
함수 내에서 포인터 값 자체를 수정하려면, 포인터에 대한 포인터를 인수로 사용해야 합니다. 이 기술은 허용 가능하며 이러한 시나리오에 대한 표준 절차입니다. 포인터 인수 앞에 & 연산자를 사용하면 포인터의 주소가 전달됩니다.
참조 대 포인터
이 동작을 달성하기 위해 포인터를 사용하는 것은 일반적인 관행입니다. , C에서는 여러 가지 이유로 일반적으로 참조 사용이 포인터보다 선호됩니다.
참조의 단점
포인터에 대한 포인터의 특정 경우에는 참조를 사용하면 구현이 단순화됩니다. 대신 단일 참조를 전달하여 포인터 수준을 완전히 제거하는 것도 가능할 수도 있습니다.
위 내용은 C 포인터 인수가 실제로 값으로 전달됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!