사실 배열의 어떤 부분을 주소 받는 포인터의 경우 그 다음 주소를 받기 위해 또 포인터를 초기화 하곤했다.
예를 들어어
1 2 3 4 5 | int arrayPoint = 3; p = &array[arrayPoint]; cout << p; p = &array[++arrayPoint]; cout << p; |
이렇게 지정하곤 했는데, 책을 보다보니 증감이 가능하다는 것이다.
사실 주소가 124일경우 ++연산자로 증감을 한다면, 125가 되므로 int자료형은 4바이트이니까 안될 줄 알았다. 하지만 포인터의 경우 선언된 포인터 자료형에 따라 증감 연산자의 프로세스 또한 다르다는 것이다.
따라서 해당 상위 코드를
1 2 3 | p = &array[3]; cout << p; cout << ++p; |
이렇게 바꿀 수 있다.
'시스템 프로그래밍 > C/C++/C#' 카테고리의 다른 글
[C++] 1일차 복습 (0) | 2015.01.28 |
---|---|
[C/C++] 분기(Goto)에 관하여 (0) | 2014.12.23 |
[C언어] Vigenere 알고리즘 (1) | 2014.06.09 |