일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Kafka
- algorithm
- Call-by-reference
- query
- System
- CSS
- 포인터
- 노드
- HTML
- 악성코드
- jsp
- beans
- array
- 투자
- request
- c++
- 자료구조
- 윈도우즈
- OOP
- function
- JavaScript
- CLASS
- Sort
- windows
- java
- API
- UTF-8
- C
- WebProgramming
- meta
Archives
- Today
- Total
hahahia
포인터(Pointer) 본문
포인터 : 주소값을 직접 컨트롤을 하기 위해, 실제 어떤 주소값을 저장하는 변수.
주소값의 크기는 4byte이며 따라서 포인터의 크기도 4byte.
example)
변수명 앞에 &를 붙이게 되면, 그 변수의 처음 메모리 주소값을 반환한다.
그렇게되면 배열을 하나(ex, char ch[10])를 선언하고 &ch를 출력하게되면 배열 ch의 첫번째 메모리 주소값인 ch[0]의 주소를 출력할 것이다.
주소값의 크기는 4byte이며 따라서 포인터의 크기도 4byte.
example)
int형 포인터 : int* p; or int *p; (*의 위치는 상관없다)
char형 포인터 : int *cp; or int* cp;
변수명 앞에 &를 붙이게 되면, 그 변수의 처음 메모리 주소값을 반환한다.
그렇게되면 배열을 하나(ex, char ch[10])를 선언하고 &ch를 출력하게되면 배열 ch의 첫번째 메모리 주소값인 ch[0]의 주소를 출력할 것이다.
int main(){
int i = 5;
int *pi; // == int* pi; equal
pi = &i;
no1:: cout<<i<<endl; //= 5
no2:: cout<<&i<<endl;//0012FF60
no3:: cout<<pi<<endl;//0012FF60
no4:: cout<<&pi<<endl;//0012FF54
no5:: cout<<*pi<<endl; // 5
return 0;
}
1번 :: i의 값은 5
2번 :: & (reference)는 주소값을 의미합니다. 따라서 i의 주소값은 0012FF60
3번 :: pi는 i의 주소값을 가리키는 포인터입니다. 따라서 0012FF60
4번 :: pi라는 변수의 주소값은
0012FF54입니다.
5번 :: pi가 가리키고 있는 주소의 값은
5입니다.
'Language > C' 카테고리의 다른 글
매개변수 전달 기법 (0) | 2012.02.17 |
---|---|
배열(Array) (0) | 2012.02.17 |
숫자 baseball game (0) | 2012.02.16 |
난수 생성 srand 함수 (0) | 2011.05.27 |
지역 변수와 전역 변수 (0) | 2011.05.22 |
Comments