Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

const int*, const int * const 및 int const *의 차이점은 무엇입니까?

<시간/>

여기에서 정수 포인터 정수 상수와 정수 상수 포인터를 기반으로 하는 몇 가지 다른 유형의 변수 선언을 볼 수 있습니다.

그것들을 결정하기 위해 우리는 시계 방향/나선형 규칙을 사용할 것입니다. 용어를 논의함으로써 규칙도 이해할 수 있습니다.

상수 정수 * . 이것은 컴파일러에게 이것이 포인터 유형 변수이며 상수 int의 주소를 저장할 수 있음을 알리는 데 사용됩니다. 시계 규칙은 다음과 같이 말합니다 -

const int*, const int * const 및 int const *의 차이점은 무엇입니까?

이제 다른 하나는 const int * const입니다. 이것은 이것이 다른 상수 정수의 주소를 저장할 수 있는 하나의 상수 포인터 변수임을 나타내는 데 사용됩니다. 시계 규칙을 적용하면 아래와 같은 문장을 얻을 수 있습니다. -

const int*, const int * const 및 int const *의 차이점은 무엇입니까?

세 번째는 int const*입니다. . 이것은 변수가 포인터 유형 변수임을 나타내는 데 사용되며 하나의 상수 int를 가리킬 수 있습니다. 시계 규칙은 아래와 같이 적용할 수 있습니다.

const int*, const int * const 및 int const *의 차이점은 무엇입니까?

눈치채셨다면 첫 번째와 마지막(const int *와 int const *)이 같은 것임을 알 수 있습니다. 따라서 서로 바꿔서 사용할 수 있습니다.