Áú¹® Çϳª ¿Ã¸³´Ï´Ù
Á¦°¡ ÇØÅ· °ø°ÝÀÇ ¿¹¼úÀ̶õ Ã¥À» º¸¸é¼ µû¶óÇÏ°í Àִµ¥¿ä,,
111ÂÊ¿¡ µð¹ö±ë °úÁ¤¿¡¼
void test_function(int a, int b, int c, int d){
int flag;
char buffer[10];
flag = 31337;
buffer[0] = 'A';
}
int main(){
test_function(1,2,3,4);
}
ÀÌ ¼Ò½º¸¦
gcc -g stack_example.c
gdb -q ./a.out
disass main
±îÁö´Â Àß ½ÇÇàÀÌ µÇ´Âµ¥ À̾î¼
disass test_function() À» Ä¡¸é
you can't do that without a process to debug ¿Í °°Àº ¿¡·¯ ¸Þ½ÃÁö°¡ Ãâ·ÂµÇ´Âµ¥
¿Ö ±×·±Áö ¾Ë ¼ö ÀÖÀ»±î¿ä??
Ã¥ÀÇ ¶óÀ̺ê cd·Î ºÎÆÃÇؼ ¶È°°ÀÌ µû¶óÇÏ´ÂÁßÀε¥¤Ð¤Ð |