2013년 7월 8일 월요일






int b = 5; 
int* pPointer; 
pPointer = b; 
cout << pPointer;   // b 변수의 주소를 출력 
cout << *pPointer;  // b 변수 주소의 값(5)을 출력, 4byte만큼 

즉, b == *pPointer



int array[5] = {0,1,2,3,4};  
SomeFunction(array); //array의 0번지 주소를 넘겨줌  

포인터주소를 넘길때 배열의 경우 배열 명을 넣어주면 된다.


Q) int (*ptr)[3]과 int* arr[3]의 차이점은 무엇일까? 
A) int (*ptr)[3]은 3개의 열을 가진 2차원 배열이고 int* arr[3]은 정수형 포인터 3개를 가진 값이다.


배열과 포인터 관계의 숙지사항 
  1. 배열명은 배열의 시작주소를 가지는 포인터 상수 
  2. 2차원 배열에서 첨자 [] 하나는 각 행의 시작주소를 가지는 포인터 상수

0 개의 댓글:

댓글 쓰기