18
Pointer? Pointer! 경경경경경 경경경경경경 3 경경 -1- - 포포포 포포포포 - 2010 6 1 경경경경 경경 경 경경경

Pointers in c

Embed Size (px)

DESCRIPTION

Pointer in c

Citation preview

Page 1: Pointers in c

Pointer? Pointer!

경성대학교컴퓨터과학과 3 학년

장 진 호

-1-

- 포인터 이해하기 - 2010 년 6 월 1 일

교과교재 연구 및 지도법

Page 2: Pointers in c

• 변수의 개념

• C 언어의 메모리구조 이해

• 포인터란 무엇인가 ?

• 포인터와 배열의 관계

-2-

학습목표

교과교재 연구 및 지도법

Page 3: Pointers in c

Contents

1. C 프로그래밍에서의 변수

2. C 언어의 메모리구조

3. 포인터란 ?

4. 포인터 사용 예제

5. 포인터와 배열의 관계

-2-

6. 요약

7. 참고 문헌

Page 4: Pointers in c

• 프로그램 실행 위해 메모리 공간 필요 • 변수 – 이름이 부여된 메모리 공간

• 변수 ( 메모리 ) 에 데이터 값 저장

• 메모리 주소 값과 데이터 값 표현

-4-

C 프로그래밍에서의 변수

교과교재 연구 및 지도법

Page 5: Pointers in c

-5-

C 프로그래밍에서의 변수

교과교재 연구 및 지도법

Page 6: Pointers in c

-6-

C 프로그래밍에서의 변수

교과교재 연구 및 지도법

Page 7: Pointers in c

-7-

C 언어의 메모리구조

교과교재 연구 및 지도법

프로그램의 시작과 동시에 할당프로그램이 종료되어야만 메모리에서 소멸

프로그래머의 필요에 의해서 메모리 공간이 할당 및 소멸

함수 호출 시 생성함수 호출이 완료되면 사라진다는 특징을 지님

Page 8: Pointers in c

-8-

C 언어의 메모리구조

교과교재 연구 및 지도법

Page 9: Pointers in c

• * 기호 사용

• 포인터 변수 ( 메모리 공간 ) – 메모리 주소를 저장하기 위한 변수

• 메모리 주소에 위치한 데이터 값 ( 주소 값 앞에 * 기호 사용 )

-9-

포인터란 ?

교과교재 연구 및 지도법

Page 10: Pointers in c

-10-

포인터란 ?

교과교재 연구 및 지도법

Page 11: Pointers in c

-11-

포인터란 ?

교과교재 연구 및 지도법

5

0x22cd440x22cd40

0x22cd44 x

*ptr…

……

……

4byte

&ptr ptr *ptr

x&x

address data pointer

*ptr == *(&x)

Page 12: Pointers in c

-12-

포인터 사용 예제

교과교재 연구 및 지도법

Page 13: Pointers in c

-13-

포인터 사용 예제

교과교재 연구 및 지도법

Page 14: Pointers in c

-14-

포인터와 배열의 관계

교과교재 연구 및 지도법

• 배열의 이름은 포인터

• 배열이름 == & 배열 [0] ( 배열 시작 주소 )

• 포인터는 변수 , 배열은 상수

• 포인터를 배열의 이름처럼 사용

Page 15: Pointers in c

-15-

포인터와 배열의 관계

교과교재 연구 및 지도법

Page 16: Pointers in c

-16-

. 변수 – 메모리 공간

. 포인터 변수 - 메모리 주소를 저장

. * - 메모리 주소에 위치한 데이터 값

. 배열의 이름 - 포인터

요약

교과교재 연구 및 지도법

Page 17: Pointers in c

-17-

참고 문헌 및 SITE

• 참고 문헌 열혈강의 C 프로그래밍 ( 프리렉 ) – 윤성우

• SITE http://www.winapi.co.kr

교과교재 연구 및 지도법

Page 18: Pointers in c

-18-

Thanks

교과교재 연구 및 지도법