http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_programming&no=1518 [º¹»ç]
===============================================================================
>===============================================================================
>
>>¾Æ·¡ Áú¹® ´äº¯µµ ¾È´Þ·È´Âµ¥ ±Ã±ÝÇÑ°Ô ¶Ç »ý°Ü¼ ¤Ñ.¤ÑÁú¹®ÇÕ´Ï´Ù.
>>¾Æ½Ã´Â ºÐÀº ±ÍÂúÀ¸½Ã´õ¶óµµ ´äº¯Á» ÇØÁֽñæ¹Ù·¡¿ä..¤Ð¤Ð
>>
>>struct robot {
>> int head;
>> int arms[2];
>> int *finger;
>> } mazinga;
>>main()
>>{
>> mazinga.head = 100;
>> mazinga.arms[0] = 100;
>> mazinga.finger = (int *)100; <--¿©±â
>>
>> printf("%x ",mazinga.head );
>> printf("%x ",mazinga.arms[0]);
>> printf("%x ",mazinga.finger );
>>}
>>
>>ÀÏ´Ü ¼Ò½º´Â ÀÌ·¸±¸¿ä. ¿©±â¼ ¿©±â¶ó°í ½áÁø°÷ÀÌ ±Ã±ÝÇÕ´Ï´Ù. Æ÷ÀÎÅͺ¯¼ö´Â
>>ÁÖ¼Ò°ª¸¸À» °¡Áú¼ö ÀÖ´Â º¯¼ö ¾Æ´Ñ°¡¿ä?
>>¼Ò½º¿¡¼´Â Æ÷ÀÎÅÍ¿¡ °ªÀ» Áý¾î³Ö°í Ãâ·ÂÇÏ°í Àִµ¥.. ¾î¶»°Ô °¡´ÉÇÑ°ÇÁö..?
>>Æ÷ÀÎÅÍ¿¡ 100À̶ó´Â »ó¼ö¸¦ Áý¾î³ÖÀº°Ô ¸Â³ª¿ä?
>>±×¸®°í (int *)100 ¿¡¼ 100¾Õ¿¡ ºÙÀº°Ô ¹«½¼ ÀǹÌÀΰ¡¿ä?
>>
>===============================================================================
>
>Áú¹®À» º¸¾Ò´Âµ¥¿ä.
>
>³ÃÁ¤ÇÏ°Ô »ý°¢ÇßÀ» ¶§ ¾ÆÁ÷ C¾ð¾îÀÇ ÀÌÇØ°¡ ºÎÁ·ÇϽŵí ÇÕ´Ï´Ù.
>
>Á»´õ ¸¹Àº ÇÁ·Î±×·¡¹ÖÀ» ÅëÇÏ¿© ¸¹Àº °æÇèÀ» ´õ ½×À¸¼Å¾ß ÇÒµí ÇØ¿ä.
>
>ÀÏ´Ü ´äº¯À» µå¸®¸é...
>
>C¾ð¾îÀÇ ÃÖ´ë ÀåÁ¡ÀÎ Æ÷ÀÎÅÍ.
>
>ÀÌ Æ÷ÀÎÅ͸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀº À߾ƽðÚÁö¸¸ ÀÌ·±½ÄÀÌÁÒ.
>
>ŸÀÔ¸í * º¯¼ö¸í;
>
>ex) int *i;
>
>¾Æ½Ã´Ù½ÃÇÇ Æ÷ÀÎÅÍ Å¸ÀÔÀ¸·Î ¼±¾ðµÈ º¯¼ö´Â ÁÖ¼Ò°ª¸¸À» ÀúÀåÇÕ´Ï´Ù¸¸...
>
>ÁÖ¼Ò°ª ¿ª½Ã ¼ýÀÚ¿¡ ºÒ°ú ÇÕ´Ï´Ù.
>
>À§ÀÇ Äڵ忡¼ º¸¸é...
>
> mazinga.finger = (int *)100;
>
>(int *)¶ó°í ¾²¿©ÀÖÁÒ?
>
>¸¸¾à À̺κÐÀ» »ý·«ÇÒ °æ¿ì °æ°í°¡ ¶ß°ÔµË´Ï´Ù.
>
>°æ°í³»¿ëÀº ÁÖ¼Ò°ª Çü½ÄÀÌ ¾Æ´Ï¶ó´Â ¸Þ½ÃÁö°¡ ¶ßÁö¸¸ ÄÄÆÄÀÏÀº µË´Ï´Ù.
>
>ÇÏÁö¸¸ ÀÌ·¸°Ô ¸í½ÃÇØÁÙ °æ¿ì ÁÖ¼Ò°ª ŸÀÔÀº ¾Æ´ÏÁö¸¸ ÁÖ¼Ò°ªÀ¸·Î °Á¦·Î ŸÀÔ º¯È¯À» Çؼ ³ÖÀ¸¶ó´Â ¶æÀÌ µÇÁö¿ä.
>
>¹°·Ð À§ÀÇ 100À̶ó´Â ÁÖ¼Ò°ªÀº ¾ø½À´Ï´Ù.
>
>±×³É °Á¦·Î ³Ö¾îÁØ°Í ¹Û¿¡ ¾ø½À´Ï´Ù.
>
>ÇÁ·Î±×·¡¹ÖÀ» ÇÏ´Ù°¡ º¸¸é Á÷Á¢ ÁÖ¼Ò°ªÀ» Áý¾î ³Ö¾î¾ßÇÏ´Â °æ¿ìµµ ¹ß»ýÇÏ°ï ÇÕ´Ï´Ù.
>
>±×·²¶§ À§¿Í °°ÀÌ ÇÏ½Ã¸é µË´Ï´Ù.
>
>±×·³ Áñ°Å¿î°øºÎ µÇ¼¼¿ä~
===============================================================================
Á¦ »ý°¢Àº ÀÌ·¸½À´Ï´Ù.
Á÷Á¢ ÁÖ¼Ò°ªÀ» Áý¾î ³Ö¾î¾ß ÇÑ´Ù°í Çϼ̴µ¥..
¿ì¼± int *finger;
Àº ÇÒ´çÀÌ µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù.
µû¶ó¼
struct robot
{
int head;
int arms[2];
int *finger;
}mazinga;
main()
{
mazinga.finger = (int *)malloc(sizeof(int)); // 1
// memory allocate.
mazinga.head = 100;
mazinga.arms[0] = 100;
mazinga.finger[0] = 100; // 2
// 1 °ú 2ÀÇ °úÁ¤À»
// mazinga.finger = (int *)100;
// Æ÷ÀÎÅÍ Ä³½ºÆà ÀÛ¾÷À¸·Î ³¡³» ¹ö¸°°Ô ¾Æ´Ñ°¡ ½Í¾î¿ä.
//´Ü mazinga.finger = (int *)100;
//Àº finger º¯¼ö¸¦ ÇÑ°³¸¸ ¾µ¼ö Àִ°Űí.
//malloc ¸¦ ÀÌ¿ëÇϸé ÀÏÂ÷ ¹è¿·Î ¾µ ¼ö Àִ°ÅÁÒ..
printf("%x", mazinga.head);
printf("%x", mazinga.arms[0]);
printf("%x", mazinga.finger[0]);
//printf("%x", mazinga.finger);
}
ÀÌ ¶æÀÌ ¾Æ´Ò±î ½Í³×¿ä ^^
Àúµµ °øºÎÇÏ°í ÀÖ´Â ÁßÀ̶ó¼¿ä¤¾¤¾
¸Õ°¡ ÀÌ»óÇÏ´Ù ½ÍÀ¸¸é ¹Ù·Î ÅÂŬ °É¾îÁÖ¼¼¿ä ^^
Àü ÀÌ·¸°Ô ÀÌÇØÇ߰ŵç¿ä ¤¾¤¾ |
Hit : 2015 Date : 2007/12/11 11:10
|