본문 바로가기

pointer2

[C/C++] C++에게 포인터란? C++에서 포인터가 필요한 이유는 바로 함수를 주소에 의한 전달 방식으로 정의하기 위해서이다. 함수를 주소에 의한 전달 방식으로 정의하면 실 매개 변수 값을 변경할 수 있다. 원칙적으로는 함수의 매개변수는 호출하는 쪽에서 호출 당하는 쪽으로 일방적으로 값을 전달한다. 즉, 한쪽방향으로만 값을 전달할 수 있다. 주소에 의한 전달 방식 역시 매개 변수로 값을 전달하는 것이므로 이러한 원칙을 그대로 지키고 있다. 하지만 주소에 의한 전달 방식은 변수의 주소 값을 실 매개변수로 사용하고 이를 포인터 변수 형태로 선언된 형식 매개변수가 전달받는다. 그런 다음 이 포인터 변수를 간접 참조함으로서 함수 호출후에 선언된 변수 값을 변경한다. 2011. 1. 26.
[C++] Pointer Pointer도 하나의 변수!! 정수? 문자? 부동소수? 무엇을 담는 변수인가? 바로 Memory의 주소를 담는 변수이다. Pointer의 연산자 - 주소 연산자 int var; int *P; //정수형 Pointer 변수 P의 선언 P = &var; //변수 var의 주소값이 Pointer로 들어감 - 참조 연산자 int var1=1, var2; int *P; //정수형 Pointer 변수 P선언 P=&var1; //P에 var1의 주소값이 들어감 *P=5 //P가 가르키는 주소값에 5를 대입 var2=*P //변수 var2에 *P가 가리키는 주소값이 가지는값(=var1)을 var2에 대입 2010. 4. 12.