포인터는 주소를 가리키며, 포인터 변수는 주소를 저장하는 변수
// 포인터 변수를 선언하고 주소를 저장하여 출력
#include <stdio.h>
int main(void)
{
long k=8;
long *p;
p=&k;
printf("k의 주소: %u\n", &k);
printf("p의 주소: %u\n", &p);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
return 0;
}
// 실행 결과
// 다른 주소 대입 후의 포인터의 변화
#include <stdio.h>
int main(void)
{
long k=8, i=3;
long *p;
p=&k;
printf("k의 주소: %u\n", &k);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
p=&i;
printf("i의 주소: %u\n", &i);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
return 0;
}
// 실행 결과
// 포인터 변수를 선언하고 주소를 저장하여 출력
#include <stdio.h>
int main(void)
{
long k=8;
long *p;
p=&k;
printf("k의 주소: %u\n", &k);
printf("p의 주소: %u\n", &p);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
return 0;
}
// 실행 결과
// 다른 주소 대입 후의 포인터의 변화
#include <stdio.h>
int main(void)
{
long k=8, i=3;
long *p;
p=&k;
printf("k의 주소: %u\n", &k);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
p=&i;
printf("i의 주소: %u\n", &i);
printf("p의 값 : %u\n", p);
printf("p가 가리키는 곳의 값: %d\n", *p);
return 0;
}
// 실행 결과
'공부 > c언어' 카테고리의 다른 글
[c언어] 포인터와 배열. 배열이름이 포인터 상수인지, 연속된 기억공간에 저장되는지를 확인 (0) | 2011.06.09 |
---|---|
[c언어] 포인터 변수에서 간접연산자 *의 역할 (0) | 2011.06.09 |
[c언어](연습문제) 알파벳 별로 몇개의 문자가 입력되었는지를 카운트 (0) | 2011.06.08 |
[c언어](연습문제) 문자열을 입력받아 ASCII코드값을 더한 값으로 출력 (0) | 2011.06.03 |
[c언어](연습문제) 화폐단위별로 화폐의 개수를 출력 (0) | 2011.06.03 |