포인터는 다른 변수의 주소값을 가지는 특별한 변수이다. *는 포인터의 내용 연산자이다. &는 포인터의 주소 연산자이다. 일반 변수 포인터 변수 선언 int a; // 정수형 변수 a int *a; // 포인터 변수 a를 종수형으로 선언 값 할당 int a = 100; // 변수 a에 100할당 *a = 100; // a 주소에 100 할당 주소 참조 &a; // 변수 a의 주소 a; // 주소 주소 연산 할 수 없음 a--; // 포인터를 1 감소 선언 1 자료형 * 포인터변수명 ; 1 int * p ; 변수 p는 포인터 변수이며, 정수형의 값을 가지는 변수에 대한 주소를 가진다. 선언시에 사용되는 *는 내용 연산자가 아니다. 초기화 포인터 변수는 반드시 초기화 후에 사용해야 한다. 1 int * p ; 2 int i ; 3 p = & i ; 포인터 변수의 크기 포인터 변수의 자료형은 포인터가 가르키는 변수의 자료형이다. 포인터 변수의 크기는 포인터가 가르키는 자료형의 크기와 무관하다. 1 #include <stdio.h> 2 3 /* 4 포인터의 크기 5 */ 6 7 int main () 8 { 9 int i = 4 ; 10 int * p_i = & i ; 11 char ch = 'a' ; 12 char * p_ch = & ch ; 13 double dbl = 1.0 ; 14 double * p_dbl = & dbl ; 15 16 printf ( "%d \n " , sizeof ( p_i )); 17 printf ( "%d \n " , size...
댓글
댓글 쓰기