close_btn

[실습자료] 포인터 메모리 덤프

남광우 2014.06.04 10:18 조회 수 : 93

#include <stdio.h>
#include <math.h>

int main()
{
int i = 0x0001;
int *pi1 = &i;
int *pi2 = &i;
int arr[3] = { 100, 2000, 3000 };
int j = 3;
char k = 'A';
char *pk1 = &k;
char *pk2 = &k + 1;
char str[] = "Hello World! 123!";
int z = 0;

unsigned char const *p = (unsigned char const *)&p;

int offset, dumpStart;

dumpStart = (unsigned int)p % 16;
for (offset = -dumpStart; (p+offset) < &i+1; offset++)
{
if (0 == ((unsigned int)p + offset) % 16)
printf("n [%x] :", (p+offset) );
printf("%02X ", *(p + offset));
}
printf("n");
}