반응형


// -----------------------------------------------------------
//   포인터 !! 
// -----------------------------------------------------------
// 포인터 --> 메모리 주소에 대한 기호화된 표현이다 !! 
// 주소 ---> 이름 !!  
// 63빌딩   --> 서울시 영등포구 여의도동 1111-1번지
// 실제로 모든 변수는 메모리 상의 자기만의 고유한 번지위치를 갖는다 !! 
// 하지만, 주소번지를 직접사용하기에는 난감하기때문에... 주소에 대한 이름 !!  

// 포인터 변수 !! 
// 자기 자신의 값으로 메모리의 주소값만을 갖는 변수 !! 

// 포인터 변수 선언 !! 
	// 타입 *  이름;
/*	 int* p; 
	 char * ch; 
	 double * d; */
// 대상체 * 변수이름 ; 
//**********************************************************
//   int * p = 10;  //포인터 변수에는 오직  주소값만 저장할 수 있다.
//**********************************************************

#include 

void main()
{
	//*****쓰레기 값 *****************************************************
	//int * p; //  stack에저장되어지는 변수는 모두 쓰레기값으로 초기화 !!  
	//printf("%d\n" , p);
	//printf("%d\n" , &p);
	// 1) & 주소 연산자 !! 
	// ---> 변수의 실제 주소값을 얻어올때 사용한다 !! 
	//**********************************************************
	int * p; // 포인터 변수 선언 !! 
	
	int val = 10;
		
	printf("&val = %d\n" ,  &val);
	// 포인터 변수에 변수의 주소값을 할당한다.. 
	//( 참조한다. 가르킨다.)
	p = &val; 
	// 2) * 역참조 연산자 
	// --> 주소값을 역참조해서 실제 값이 있는 곳으로 이동 !! 
	// --> 주소값이 실제 가르키는 곳의 값을 가져올때 사용 !! 

	//printf("val = %d  \n" , val) ;
	//printf("*p = %d\n " ,  *p );
	 
	//기타  
	printf("%d\n",  p );
	printf("%d\n",  *p );
	printf("%d\n",  &*p );





	

}


+ Recent posts