2016-10-03 6 views
0

나는 C가 상당히 새로운 편이다. 누군가 다음과 같은 차이점을 설명 할 수 있습니까? 사용법과 개념의 관점에서.상수 포인터와 상수 포인터 사이의 차이점

int *const p= &x; 

int const *p= &x; 

const int *const p= &x; 

또는이 개념을 완전히 이해하는 데 도움이되는 포인터 사용의 다른 변형입니다.

답변

1

const는 1) 포인터 자체가 - 초기화 후 다른 것을 가리 키도록 변경할 수 있는지 여부와 포인터가 가리키는 데이터 - 포인터를 통해 데이터가 변경되는지 여부에 관계없이 적용됩니다.

int *const p= &x; // p is const pointer to non-const data - p cannot change to point to something else, but you can change what it points to 

int const *p= &x; // p is non-const pointer to const data - p can change to point to something else, but what it points to cannot be changed 

const int *const p= &x; // p is const pointer to const data - p cannot change to point to something else, and what it points to cannot be changed