Á¤¼ºÈÆ
    µ¿Àû ¸Þ¸ð¸® ÇÒ´ç¿¡ ´ëÇؼ­ ±Ã±ÝÇÑ°Ô ÀÖ½À´Ï´Ù.



 

ù° - µ¿ÀûÀ¸·Î ¸Þ¸ð¸®ÇÑ ÇÁ·Î±×·¥°ú, Á¤ÀûÀ¸·Î ¸Þ¸ð¸®¸¦ ÇÒ´çÇÑ ÇÁ·Î±×·¥ÀÌ ½ÇÇà ¼Óµµ¿¡ Â÷ÀÌ°¡ ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù.
     ¿äÁò ÄÄÇ»ÅÍ°¡ ÁÁ¾Æ¼­ ½ÇÁ¦·Î´Â ¼Óµµ Â÷ÀÌ°¡ ¾È³ª°ÚÁö¸¸, Â÷ÀÌ°¡ ÀÖÀ»°Í °°½À´Ï´Ù.
     Ã¥À» Ã£¾ÆºÁµµ Ã£À»¼ö ¾ø¾î¼­ Áú¹® µå¸³´Ï´Ù.

ÁÁÀº Áú¹®ÀÔ´Ï´Ù¸¸, ¸Å¿ì ´äº¯Çϱ⠾î·Æ°í ¶ÇÇÑ ¼³¸íÇصµ ÇлýÀÌ ÀÌÇØÇϱâ Èûµç Áú¹®ÀÔ´Ï´Ù.

 

¼Óµµ Â÷ÀÌ°¡ ¸í½ÃÀûÀ¸·Î ¾ø°ÚÁö¸¸ ½ÇÁúÀûÀ¸·Î´Â ÀÖÀ» ¼öµµ ÀÖ½À´Ï´Ù.

±×·¯³ª ½ÇÁúÀûÀ¸·Î ÀÖ´Â °æ¿ì¿¡µµ µ¿ÀûÀÌ³Ä Á¤ÀûÀ̳ÄÀÇ Â÷À̶ó±â º¸´Ù ¸Þ¸ð¸® ¾×¼¼½º ¹æ½ÄÀÇ Â÷ÀÌ¿¡¼­ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù.

 

Á¤Àû ¸Þ¸ð¸® ÇÒ´çÀº ÇÁ·Î±×·¥¿¡ ¸Þ¸ð¸®°¡ ÇÒ´çµÇ´Â °ÍÀÔ´Ï´Ù.

(¹°·Ð ÇÔ¼ö³»¿¡¼­ ¼±¾ðµÈ °æ¿ì¿¡´Â ÇÁ·Î±×·¥ÀÌ ¾Æ´Ï¶ó ½ºÅÿ¡ ÇÒ´çµË´Ï´Ù¸¸...)

 

±×·¯¹Ç·Î code ¿Í »ó´ëÀûÀ¸·Î °¡±îÀÌ¿¡ ÀÖ°Ô µË´Ï´Ù. ÀÌ °æ¿ì µ¿ÀÏ data segment ³»¿¡¼­ÀÇ ¾×¼¼½º¶ó¸é

DS + SI ³ª DS + DI ÇüÅÂÀÇ ¾×¼¼½º·Î DS º¯È­¾øÀÌ ¾×¼¼½º ÇÒ °¡´É¼ºÀÌ Ä¿Áý´Ï´Ù.

 

±×·¯³ª, µ¿Àû¸Þ¸ð¸® ÇÒ´çÀº heap ¿µ¿ª¿¡¼­ ¸Þ¸ð¸®¸¦ ÇÒ´ç ¹Þ°Ô µÇ¹Ç·Î heap ¿µ¿ªÀÌ ÇÁ·Î±×·¥ ¿µ¿ª¿¡¼­ ¸Ö¸® ÀÖ´Ù¸é

´Ù¸¥ data segment ¿¡ Á¸ÀçÇØ data segment ¸¦ ¹Ù²Ù¾î ¾×¼¼½ºÇÏ°Ô µÇ°í ±×·¯¸é ¾ÆÁÖ ¾à°£ÀÇ ¼Óµµ°¡ ´À·ÁÁö°ÚÁö¿ä.

(¹°·Ð °ÅÀÇ ³ª³ë ³ª ¸¶ÀÌÅ©·Î ÃÊ ¼öÁØÀÌ°ÚÁö¸¸)

 

°á·ÐÀº Á¤ÀûÀÌ³Ä µ¿ÀûÀ̳ÄÀÇ Â÷ÀÌ°¡ ¾Æ´Ï¶ó µ¥ÀÌÅÍÀÇ ÀúÀå À§Ä¡¿¡ µû¶ó¼­ ¾ÆÁÖ¾ÆÁÖ ¾à°£ Â÷ÀÌ°¡ ³¯ ¼öµµ ÀÖ°í

¾È ³¯¼öµµ ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.

 

µÎ¹ø° - Æ÷ÀÎÅÍ°¡ °¡¸£Å°´Â °ªÀÇ Å©±â¸¦ ¾Æ´Â ¹æ¹ýÀº ¾ø³ª¿ä?
                int *p;
    p = (int*) malloc(20*(int));
     ÀÌ·¸°Ô Çϸé int°ªÀÌ 4 À̱⠶§¹®¿¡ Áö±Ý 80byteÀÇ °ø°£À» È®º¸ ÇÑ°ÍÀ̶ó°í »ý°¢ÀÌ µË´Ï´Ù.
               printf("%d", sizeof(___???___));
     ???¿¡ ÀÌ°Í Àú°Í ³Ö¾î ºÃÁö¸¸ °è¼Ó '4'¶ó´Â °ª¸¸ ³ª¿É´Ï´Ù.
     ¾î¶»°Ô Çؾߠp°¡ °¡¸£Å°´Â °÷ÀÇ °ø°£ÀÇ Å©±â¸¦ ¾Ë¼ö ÀÖÀ»±î¿ä?

 

sizeof ¿¬»êÀÚ´Â compile-time operator ÀÔ´Ï´Ù.

Áï, C ¾ð¾î¸¦ ½ÇÇàÆÄÀÏ exe ·Î ¸¸µé ¶§ ÀÌ ¿¬»êÀÚ°¡ µ¿À۵Ǵ °ÍÀÔ´Ï´Ù.

 

±×·¯¹Ç·Î,

 int  num[10];

printf("%d\n",sizeof (num));

 

À§Ã³·³ Çϸé compile-time ¿¡ num ÀÇ Å©±â°¡ int 4 bytes ÀÌ°í 10°³ À̹ǷΠ40À̶ó°í Á¤È®ÇÏ°Ô Å©±â¸¦ Ãâ·ÂÇÕ´Ï´Ù.

 

±×·¯³ª,

 

int *num;

num = (int *) malloc(sizeof(int) * 10);

printf("%d\n",sizeof (num));

Çϸé num ÀÇ Å©±â°¡ run-time ½Ã¿¡ °áÁ¤µÇ±â¿¡ ¾Ë ¼ö°¡ ¾ø´Â °ÍÀÔ´Ï´Ù.

°á±¹ ¾Æ·¡¿¡¼­´Â num ÀÇ ÀúÀåÅ©±âÀÎ 4¸¸ Ãâ·ÂµË´Ï´Ù. (ÄÄÇ»ÅÍ¿¡ µû¶ó¼­ 4³ª 2°¡ Ãâ·ÂµÊ)

 

°á±¹ malloc À» »ç¿ëÇÏ´Â ÇÁ·Î±×·¥¿¡¼­´Â malloc ÀÇ ÀÎÀÚ·Î size ¸¦ ³Ö¾îÁֱ⿡ ÇØ´ç size ¸¦ ÀÌ¿ëÇÏ¿©

Å©±â¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

 

³ªµµ malloc À¸·Î ÇÒ´çµÈ ¸Þ¸ð¸® ¿µ¿ªÀÇ Å©±â¸¦ ´Ù¸¥ ¹æ¹ýÀ¸·Î ¾Ë ¼ö ÀÖ´Â ¹æ¹ýÀÌ ¾ø´Â °ÍÀ¸·Î ¾Ð´Ï´Ù.

±×·¯³ª, ³ªµµ 100% È®½ÅÇÒ ¼ö´Â ¾øÀ¸´Ï, Ȥ½Ã ±×·± ¹æ¹ýÀ» ¾Ë°ÔµÈ´Ù¸é ³ª¿¡°Ôµµ ¾Ë·ÁÁֱ⠹ٶø´Ï´Ù.

 

 

 

 

  µî·ÏÀÏ : 2007-04-25 [00:57] Á¶È¸ : 5489 ´Ù¿î : 0   
 
¡â ÀÌÀü±ÛÀڷᱸÁ¶ °úÁ¦¿¡ ´ëÇØ Áú¹® ÀÖ½À´Ï´Ù.
¡ä ´ÙÀ½±ÛÀڷᱸÁ¶ °úÁ¦ Áú¹®¿ä
ÀڷᱸÁ¶
¹øÈ£ ¨Ï Á¦ ¸ñ À̸§ Á¶È¸ µî·ÏÀÏ
ÀڷᱸÁ¶ ÀÚ¹Ù applet ±¸µ¿ ¹æ¹ý
±â¸»°úÁ¦ Á¦¾È¹ßÇ¥ ³»¿ë
±â¸»°úÁ¦ ÃÖÁ¾¹ßÇ¥ ³»¿ë
±â¸»°úÁ¦ ÃÖÁ¾º¸°í¼­ ³»¿ë
21 ±â¸»°úÁ¦ Á¦¾È¹ßÇ¥ ³»¿ë Á¤¼ºÈÆ 5250 04-17
20 ÀڷᱸÁ¶ Ç÷¡½Ã ¹× java ¾ÖÇø´ ±¸µ¿ ¹æ¹ý Á¤¼ºÈÆ 4179 03-08
19 lC¾ð¾î ªÀº ÇÁ·Î±×·¥ °æÁø´ëȸ »çÀÌÆ® Á¤¼ºÈÆ 3940 05-26
18 °úÁ¦¿¡ °üÇÏ¿© Áú¹®ÀÖ½À´Ï´Ù. ±èÇö¹è 3791 05-05
17 ¦¦❶ °úÁ¦¿¡ °üÇÏ¿© Áú¹®ÀÖ½À´Ï´Ù. Á¤¼ºÈÆ 3433 05-05
16 ÀڷᱸÁ¶ °úÁ¦¿¡ ´ëÇØ Áú¹® ÀÖ½À´Ï´Ù. ±è°æº¸ 3824 04-06
15 ¦¦❶ ÀڷᱸÁ¶ °úÁ¦¿¡ ´ëÇØ Áú¹® ÀÖ½À´Ï´Ù. Á¤¼ºÈÆ 3533 04-12
14 ÀڷᱸÁ¶ °úÁ¦ Áú¹®¿ä ÇãÈ¿¿ø 3690 04-03
13 ¦¦❶ ÀڷᱸÁ¶ °úÁ¦ Áú¹®¿ä Á¤¼ºÈÆ 3320 04-03
11 µ¿Àû ¸Þ¸ð¸® ÇÒ´ç¿¡ ´ëÇؼ­ ±Ã±ÝÇÑ°Ô ÀÖ½À´Ï´Ù. ÀÌ»õÁ¾ 3533 04-24
10 ¦¦❶ µ¿Àû ¸Þ¸ð¸® ÇÒ´ç¿¡ ´ëÇؼ­ ±Ã±ÝÇÑ°Ô ÀÖ½À´Ï´Ù. Á¤¼ºÈÆ 5489 04-25
9 ÇÔ¼ö¿øÇü¿¡ ´ëÇÑ »ç¼ÒÇÑ Áú¹®ÀÖ½À´Ï´Ù.. ±èÁöÈÆ 3240 03-21
8 ¦¦❶ ÇÔ¼ö¿øÇü¿¡ ´ëÇÑ »ç¼ÒÇÑ Áú¹®ÀÖ½À´Ï´Ù.. Á¤¼ºÈÆ 3011 03-21
7 ±³¼ö´Ô Áú¹®ÀÖ½À´Ï´Ù. Á¤¼ºÈÆ 3269 03-19

[1][2][3][4]