포인터

Study/C++ 2011. 9. 3. 23:12
포인터?
- 메모리 번지를 저장할 수 있는 변수
- 다른 변수의 위치를 저장할 수 있는 변수

사용이유
- 메모리를 동적으로 할당 받을 떄
- 매개변수가 변경되어 돌려지기를 원할 떄
- 이름 없는 변수의 사용


단순변수의 포인터 활용 예

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void main()
{
int a =3;
int *pa = &a;
cout<<a<<""<<*pa<<endl;
 
int arr[10];
arr[2] =3;
cout<<arr[2]<<endl;
 
int *prr;
prr=new int[10];
prr[2] =3;
cout<<prr[2]<<endl;
}



단순변수의 포인터 활용 예 - 동적 기억장소 할당

1
2
3
4
5
6
7
8
9
10
11
void main()
{
int n;
cin>>n;
int *prr = new int[n];
if(n>=3)
{
prr[2]=4;
cout<<prr[2]<<endl;
}
}




단순변수의 포이터 활용 예 - call by value 값에 의한 호출

1
2
3
4
5
6
7
8
9
10
11
12
void swap(int x, int y)
{
itn tmp=x;
x=y;
y=tmp;
}
void main()
{
int a =3; b=4;
swap(a,b);
cout<<a<<""b<<endl;
}




출력값 a= 3 , b=4


단순변수의 포인터 활용 예 - call by reference 참조에 의한 호출

1
2
3
4
5
6
7
8
9
10
11
12
void swap(int *x, int *y)
{
int tmp=*x;
*x=*y;
*y=tmp;
}
void main()
{
int a=3; b=4;
swap(&a, &b);
cout<<a<<""b<<endl;
}



출력값 a=4 , b=3

'Study > C++' 카테고리의 다른 글

난수 발생하기  (0) 2011.09.29
IT CookBook, C++ 프로그래밍 기초 연습문제 해답  (0) 2011.09.03
C++ 클래스  (0) 2011.09.03
총값과 최소값 구하기  (0) 2011.09.03
이차방정식  (0) 2011.09.03
Posted by 코딩하는 야구쟁이
,