포인터 : 변수의 주소

포인터 변수는 간접연산자(*)를 사용하여 선언

포인터 변수의 값을 불러올 때는 간접연산자(*)를 사용

일반 변수의 포인터를 알고싶을 때는 주소연산자(&)를 사용

#include <stdio.h>

int main()
{
    int a;			// int 변수 a 선언
    int *b;			// 포인터변수 b 선언

    a = 50;			// a에 값 할당
    b = &a;			// b에 a의 포인터 할당
    int c = *b;			// c에 포인터 변수 b의 값 할당

    printf("%d\n", a);		// 50
    printf("%p\n", b);		// 0x100
    printf("%d\n", *b);		// 50
}

● 포인터와 배열

 배열명은 배열[0]의 주소를 갖는 포인트변수 (값을 갖는 변수가 아님)

#include <stdio.h>

main()
{
    int a[5];	// int변수배열 선언
    int *b;		// 포인터변수 선언
    
    b=a;		// 포인트 변수 b에 배열 a 주소 할당
//  b=&a		// 불가능
}