A sentimental robot

포인터배열과 더블포인터 본문

C

포인터배열과 더블포인터

GOD03219 2017. 12. 29. 20:11

#include<stdio.h>
#pragma warning(disable:4996)

void main() {


 int a=1;
 int b=2;
 int c=3;

 

 int*p[3] = {&a,&b,&c};     // 포인터 배열 > 포인터가 3개인 배열 >int* int* int*

 int **pp = &p[0];            // 포인터포인터 > 포인터(int*)를 가르키는 포인터

 
 printf("%d\t%d\t%d\n", pp[0], pp[1], pp[2]);     // 주소값
 printf("%d\t%d\t%d\n", *pp[0], *pp[1], *pp[2]);     // 값



}

 


 

int a=10;
int *p=&a;
int **pp;
pp=&p; 이면,

**pp=*p=a=10    
*pp=p=&a     // a의 주소값 > pp가 가르키고 있는 1차원 포인터가 가르키고 있는 주소값
pp=&p         // p의 주소값


'C ' 카테고리의 다른 글

구조체(typedef structure)  (0) 2017.12.29
배열포인터 활용  (0) 2017.12.29
함수매개변수로 [ ] 사용 해보기  (0) 2017.12.29
함수와 포인터를 사용한 1차원배열  (0) 2017.12.29
Call by address  (0) 2017.12.29