포인터 를 사용할때에
포인터 변수는 항상 0 으로 초기화 해야하며
포인터 변수를 사용하기 전에는 포인터 변수의 값이 0인지 아닌지 비교해야 한다.
비교하는 방법은 if(!포인터변수) 를 사용하는것이 간편하다.
아무것도 가리키지 않는. 포인터의 출력 예제 코드
#include <iostream>
포인터 변수는 항상 0 으로 초기화 해야하며
포인터 변수를 사용하기 전에는 포인터 변수의 값이 0인지 아닌지 비교해야 한다.
비교하는 방법은 if(!포인터변수) 를 사용하는것이 간편하다.
아무것도 가리키지 않는. 포인터의 출력 예제 코드
#include <iostream>
using namespace std;
int main()
{
int* p = 0;//아무것도 가리키고있지 않음을 나타낸다.
//cout << "*p = " << *p << "\n"; 주석처리하지 않으면 아무것도 가리키고있지 않기때문에 에러가 난다.
cout << "p = " << p << "\n";
if (0!=p)
*p = 30;//p가 0 이 아닌 경우에만 가리키는 곳의 값을 30으로 바꾼다. 가리키는 곳이 없으므로 가리키는 곳의 값을 30으로 만들 수 없다.
int a = 100; //int값 a를 선언한다.
p = &a; //p가 a를 가리키게 만든다.
if(!p) //p가 0 이 아니게 되었으므로 아래의 코드를 실행한다.
*p = 30; //p가 가리키는 곳의 변수에 30을 대입한다.
cout << "계산이 다 끝난 후의 값\n";
cout << "*p = " << *p << "\n";
cout << "p = " << p << "\n";
system("pause");
return 0;
}
//출력화면
//출력화면
'공부 > C++' 카테고리의 다른 글
const 와 포인터. (0) | 2011.11.25 |
---|---|
0과 NULL (0) | 2011.11.25 |
포인터 동작의 이해. (0) | 2011.11.24 |
주소를 사용하여 정보에 접근하기[포인터를 사용해서 포인터가 가리키는 값을 바꾸는 방법] (0) | 2011.11.24 |
무슨 타입이든 가리킬 수 있는 void 포인터 (2) | 2011.11.24 |