포인터 주소의 값은 일정하므로 포인터가 가리키는 주소의 값을 변경할 수 없습니다.
상수 포인터는 다음과 같이 선언됩니다 -
Data_Type const* Pointer_Name;
예를 들어, int const *p// const 정수에 대한 포인터
예시
다음은 상수에 대한 포인터를 설명하는 C 프로그램입니다 -
#include<stdio.h> int main(void){ int var1 = 100; // pointer to constant integer const int* ptr = &var1; //try to modify the value of pointed address *ptr = 10; printf("%d\n", *ptr); return 0; }
출력
위의 프로그램을 실행하면 다음과 같은 결과가 나온다 -
Display error, trying to change the value of pointer to constant integer
예시
다음 C 프로그램은 const −
를 제거하면 어떻게 되는지 보여줍니다.#include<stdio.h> int main(void){ int var1 = 100; // removed the pointer to constant integer int* ptr = &var1; //try to modify the value of pointed address *ptr = 10; printf("%d\n", *ptr); return 0; }
출력
위의 프로그램을 실행하면 다음과 같은 결과가 나온다 -
10