포인터 변수 선언

CODEDRAGON Development/C, C++

반응형

   

   

포인터 변수의 선언

int* pointer = NULL;

   

자료형

int*

  • 포인터 변수의 자료형 지정
  • 자료형 다음에 * 연산자를 붙임

포인터 변수 이름

pointer

  • 주소를 저장할 변수의 이름 지정

NULL 포인터 설정

NULL

  • 포인터 변수 선언 시 NULL로 초기화

   

   

포인터 변수 선언 예

int* p1=NULL; // int형 주소를 저장하는 포인터 변수

char* p2=NULL; // char형 주소를 저장하는 포인터 변수

double* p3=NULL; // double형 주소를 저장하는 포인터 변수

   

   

포인터 변수 선언 (동일 표현)

포인터 정의시 *기호를 데이터형에 붙이든 변수형에 붙이든

동일한 포인터 변수의 선언이 됩니다.


int* pointer; == int *pointer

 

   

   

잘못 사용된 포인터

포인터 변수에 주소를 저장하지 않은 경우

#include <stdio.h>

int main(void)

{

int* ip=NULL;

*ip=10000;

return 0;

}

포인터 변수에 이상한 주소 저장

#include <stdio.h>

int main(void)

{

int* ip=14592343;

*ip=1020;

return 0;

}

   

   

   

포인터 변수의 초기화 방법 2 가지 (같은 표현)

포인터 변수의 선언과 초기화를

개별적으로 수행

#include <stdio.h>

int main(void)

{

int num=10;

int* ip=NULL;

ip=&num;

return 0;

}

포인터 변수의 선언과 초기화를

동시에 수행

#include <stdio.h>

int main(void)

{

int num=10;

int* ip=&num;

return 0;

}