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

C 언어에서 포인터 접근의 개념 설명

<시간/>

포인터는 다른 변수의 주소를 저장하는 변수입니다.

포인터 선언, 초기화 및 액세스

다음 진술을 고려하십시오 -

int qty = 179;

C 언어에서 포인터 접근의 개념 설명

포인터 선언

int *p;

'p'는 다른 정수 변수의 주소를 담고 있는 포인터 변수입니다.

포인터 초기화

주소 연산자(&)는 포인터 변수를 초기화하는 데 사용됩니다.

int qty = 175;
int *p;
p= &qty;

C 언어에서 포인터 접근의 개념 설명

포인터가 문자열 배열의 요소에 액세스하는 데 얼마나 유용한지 예를 들어 보겠습니다.

이 프로그램에서는 특정 위치에 있는 요소에 액세스하려고 합니다. 위치는 오퍼레이션을 사용하여 찾을 수 있습니다.

사전 증분 포인터 문자열에 사전 증분 포인터를 추가하고 32를 빼면 해당 위치의 값을 얻을 수 있습니다.

예시

#include<stdio.h>
int main(){
   char s[] = {'a', 'b', 'c', '\n', 'c', '\0'};
   char *p, *str, *str1;
   p = &s[3];
   str = p;
   str1 = s;
   printf("%d", ++*p + ++*str1-32);
   return 0;
}

출력

77

설명

p = &s[3]. i.e p = address of '\n';
str = p; i.e str = address of p;
str1 = s; str1 = address of 'a';
printf ("%d", ++*p + ++*str1 - 32);
i.e printf("%d", ++\n + a -32);
i.e printf("%d", 12 + 97 -32);
i.e printf("%d", 12 + 65);
i.e printf("%d", 77);
Thus 77 is outputted