Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

유정석: Difference between revisions

From ZeroWiki
imported>sudalz
No edit summary
imported>sudalz
No edit summary
Line 1: Line 1:
= ZeroPage (새싹-날다람쥐) =
ZeroPage (새싹-날다람쥐)
== Profile ==
Profile
날다람쥐
날다람쥐  
== 목표 ==
목표
C시험을 잘보자.
C시험을 잘보자.  
== 계획 ==
계획
C시험을 잘보자.
C시험을 잘보자.  
== 진행중 ==
진행중
포인터(Pointer)에 대해서.
포인터(Pointer)에 대해서.  
== 포인터의 기본 형태 ==
포인터란?


포인터란, 어떤 변수의 '주소'를 참조하는 변수이다.
 
예)변수     내용
포인터란, 어떤 변수의 '주소'를 참조하는 변수이다.  
{| class="wikitable"
예)
|-
 
| a
주소 변수 내용  
|
1000  a  13
| 13
1004  b  14
|}
 
int a = 13;
int b = 14;
이라는 선언을 통해 가능하며, 메모리 상의 어떤 주소에 있는 13 이라는 데이터는 a라는 변수의 이름을 통해서 나타내어진다.
여기서 주소가 1000 이후에 1004 인 이유는 int가 4byte이기 때문이다.(여기서 주소는 예를 든 것임)
 
a = 14; 라는 명령어를 통해 a의 내용을 14로 바꿀 수 있다. 그리고 printf("%d", a); 라는 명령어를 통해 바뀐 것을 확인할 수 있다.
a라는 것은 a라는 변수가 나타내는 주소(1000)의 내용을 나타내주는 것이다.
a의 주소를 표현하는 방법에는 '&'을 붙이는 방법이 있다.
printf("%u", &a);의 결과값은 1000이다.(%u 맞나? ㅋㅋ 찾아보길. 맞을꺼야 %u는 주소값을 표현하는 표현식.)
 
포인터는 *라는 문자를 통해서 표현하는데, 만약에 INT형의 주소를 나타내는 변수 IP를 선언하고 싶으면
int* ip;
라고 표현하면 된다.
int *ip;
도 가능한 표현이다.(이게 약간 더 옳은 표현.)
예를 들어 int *ip, i;
이렇게 하면 뒤의 i는 일반적인 int로, 앞의 ip는 포인터 INT형으로 선언이 된다.
 
하지만 포인터를 왜'쓰는지 잘 모르는 경우가 많다.-_-;
제일 많이 쓰이는 곳
 
함수 내에서 값을 아무리 바꿔봤자 지역변수 의 내용은 바뀌지 않는다.
이것을 어디서나 쓸 수 있게 하기 위해서.
예)
int main()
{
 
}



Revision as of 13:15, 9 June 2009

ZeroPage (새싹-날다람쥐) Profile 날다람쥐 목표 C시험을 잘보자. 계획 C시험을 잘보자. 진행중 포인터(Pointer)에 대해서. 포인터란?


포인터란, 어떤 변수의 '주소'를 참조하는 변수이다. 예)

주소 변수 내용

1000  a   13 
1004  b  14 

int a = 13; int b = 14; 이라는 선언을 통해 가능하며, 메모리 상의 어떤 주소에 있는 13 이라는 데이터는 a라는 변수의 이름을 통해서 나타내어진다. 여기서 주소가 1000 이후에 1004 인 이유는 int가 4byte이기 때문이다.(여기서 주소는 예를 든 것임)

a = 14; 라는 명령어를 통해 a의 내용을 14로 바꿀 수 있다. 그리고 printf("%d", a); 라는 명령어를 통해 바뀐 것을 확인할 수 있다. a라는 것은 a라는 변수가 나타내는 주소(1000)의 내용을 나타내주는 것이다. a의 주소를 표현하는 방법에는 '&'을 붙이는 방법이 있다. printf("%u", &a);의 결과값은 1000이다.(%u 맞나? ㅋㅋ 찾아보길. 맞을꺼야 %u는 주소값을 표현하는 표현식.)

포인터는 *라는 문자를 통해서 표현하는데, 만약에 INT형의 주소를 나타내는 변수 IP를 선언하고 싶으면 int* ip; 라고 표현하면 된다. int *ip; 도 가능한 표현이다.(이게 약간 더 옳은 표현.) 예를 들어 int *ip, i; 이렇게 하면 뒤의 i는 일반적인 int로, 앞의 ip는 포인터 INT형으로 선언이 된다.

하지만 포인터를 왜'쓰는지 잘 모르는 경우가 많다.-_-; 제일 많이 쓰이는 곳

함수 내에서 값을 아무리 바꿔봤자 지역변수 의 내용은 바뀌지 않는다. 이것을 어디서나 쓸 수 있게 하기 위해서. 예) int main() {

}