삽질의 현장/- C

[삽잡이::C] 연산자

shovelman 2015. 6. 25. 20:30



'* 연산자 + 주소'  는 메모리의 이름이 된다.

*(asterisk) 연산자주소 앞에 붙어 해당 주소의 메모리 이름으로 된다.


'주소 + [] 연산자' 또한 같은 기능을 담당한다.

즉, '*' 와 '[]'  연산자는 같은 기능을 하나는 것이다.


1
2
3
4
5
6
7
int arr[] = {1234};
int* p;
 
= arr; //arr 즉, 배열의 이름은 배열[0]의 시작주소
 
printf("p[1]의 값 = %d,  arr[1]의 값 = %d\n", p[1], arr[1]); 
// 서로 같은 값. p는 arr의 주소를 담고 있는데 그렇다면 arr의 주소 1번재 메모리 이름이 되겠다.
cs