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

C 언어에서 상수에 대한 포인터는 무엇을 의미합니까?

<시간/>

포인터 주소의 값은 일정하므로 포인터가 가리키는 주소의 값을 변경할 수 없습니다.

상수 포인터는 다음과 같이 선언됩니다 -

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