#include <stdio.h>
void ad(int *a)
{
int b = 10;
a = NULL;
a = &b;
printf("ad(int *a)\n");
printf("int a = &b %%x *a %x - > \n", *a);
printf("int a = &b %%d *a %d - > \n", *a);
printf("int a = &b %%x a %x - > \n", a);
printf("int a = &b %%p a %p - > \n", a);
}
int main(void)
{
int* a;
a = NULL;
printf("main()\n");
printf("int* a %%x: %x\n", a);
printf("int* a %%p: %p\n", a);
ad(a);
printf("main()\n");
printf("int* a %%x: %x\n", a);
printf("int* a %%p: %p\n", a);
return 0;
}
//
main()
int* a %x: 0
int* a %p: (nil)
ad(int *a)
int a = &b %x *a a - >
int a = &b %d *a 10 - >
int a = &b %x a ffd0fbec - >
int a = &b %p a 0xffd0fbec - >
main()
int* a %x: 0
int* a %p: (nil)
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
ad(a) 로 다시 해 보세요. 그리고 debug 를
ad(a) 로 다시 해 보세요. 그리고 debug 를 해 보세요.
line-by-line 으로 따라가면서 a 주소를 확인하다 보면 해결되실 겁니다.
출력해서 확인보세요
http://codepad.org/LsMUhIYz
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
댓글 달기