Programming/C++

01. C 언어 포인터 기초

KingSSSSS 2017. 12. 20. 09:53
/*     포인터 선언 방법 */
int *pNum1 ;

 /*     포인터 선언 후 대입 방법 */
int Num1 = 100;
pNum1 = &Num1 ;

/*     포인터 선언 과 동시에 대입 방법 */
int Num2 = 1000;
int *pNum2 = &Num2;

/*     문자열 배열 선언 */
char str1 [] = "ABCD";

/*     문자열 배열의 하나의 요소를 포인터 변수에 대입 */
char *pChar1 = &str1[0];
/*     문자열 배열의 하나의 요소를 포인터 변수에 대입
       할때에는 &연산자가 배열 앞에 붙어야 한다 */

/*     문자열 배열의 전체 를 포인터 변수에 대입 */
char *pChar2 = str1;
/*     문자열 배열의 전체 를 포인터 변수에 대입
       할때에는 &연산자가 배열 앞에 붙지 않아야 한다 */

//     배열의 길이 를 알고 싶으면
//     sizeof(배열)/sizeof(배열타입) = 배열의 길이다

/*     ptr++ 포인터 자주 쓰이는 연산 설명  */
int num [] = {10,20,30,50,60,90};
int *pNum = num;
for (int i=0; i<sizeof (num)/ sizeof(int ); i++)
{
          printf("%d\n" ,*pNum++);
}

배열명이 포인터 상수