ÇÁ·Î±×·¡¹Ö

 3206, 1/161 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   indra
   http://indra.linuxstudy.pe.kr
   [re] ÇØÄð c¾ð¾î 186ÂÊ ¼Ò½º Áú¹®ÀÔ´Ï´Ù.

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_programming&no=194 [º¹»ç]


ÇØÄ¿½ºÄð Ã¥À» ¸ø ºÁ¼­.. Ã¥¿¡¼­ ÀǵµÇÑ ¹Ù´Â ¾Ë¼ö ¾ø³×¿ä.
´Ù¸¸ ÄÚµå ÀÚü°¡ À߸øµÇ¾î À־ Á¶±Ý ¼öÁ¤Çؼ­ Å×½ºÆ® ÇغýÀ´Ï´Ù
tested platform ˼

WindowsXP, VC++ °ú RH Linux, gcc ÀÔ´Ï´Ù.

¼öÁ¤µÈ ÄÚµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.

#include <stdio.h>

int main(void)
{
    long ip = 0x80000001;

    printf("char pointer: %x %x %x\n", (char*)ip, (char*)ip+1, (char*)ip+2);
    printf("int pointer: %x %x %x\n",(int*)ip, (int*)ip+1, (int*)ip+2);
    printf("long int pointer: %x %x %x\n",(long int*)ip, (long int*)ip+1, (long int*)ip+2);
    return 1;
}

- result on VC++:
char pointer: 80000001 80000002 80000003
int pointer: 80000001 80000005 80000009
long int pointer: 80000001 80000005 80000009
Press any key to continue

- result on gcc:
[indra@indra indra]$ ./c
char pointer: 80000001 80000002 80000003
int pointer: 80000001 80000005 80000009
long int pointer: 80000001 80000005 80000009
[indra@indra indra]$

Ã¥¿¡¼­´Â °¢ type ¿¡ ÀÇÇÑ Æ÷ÀÎÅÍ ¿¬»ê °á°ú¸¦
¸»ÇÏ°í ½Í¾îÇß´ÂÁöµµ ¸ð¸¥´Ù´Â »ý°¢ÀÌ µé´õ±º¿ä.
±×·³ Áñ°øÇϼ¼¿ä..

>#include <stdio.h>
>
>int main(void)
>{
>        char *cp =0x80000001;
>        int *ip =0x80000001;
>        long int *lp =0x80000001;
>
>        printf("char pointer: %x %x %x\n",*cp, *cp+1, *cp+2);
>        printf("int pointer: %x %x %x\n",ip, ip+1, ip+2);
>        printf(" long int pointer: %x %x %x\n",lp, lp+1, lp+2);
>        return 1;
>}
>
>
>¼Ò½º´Â ÀÌ·¸±¸¿ä..
>
>ÄÄÆÄÀÏ ¿¡·¯ ¸Þ½ÃÁö´Â ´ÙÀ½°ú °°½À´Ï´Ù.
>
>
>D:\Program Files\Microsoft Visual Studio\source\Cpp1.cpp(5) : error C2440: 'initializing' : cannot convert from 'const unsigned int' to 'char *'
>        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
>
>
>D:\Program Files\Microsoft Visual Studio\source\Cpp1.cpp(6) : error C2440: 'initializing' : cannot convert from 'const unsigned int' to 'int *'
>        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
>
>
>D:\Program Files\Microsoft Visual Studio\source\Cpp1.cpp(7) : error C2440: 'initializing' : cannot convert from 'const unsigned int' to 'long *'
>        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
>
>Error executing cl.exe.
>
>Cpp1.exe - 3 error(s), 0 warning(s)
>
>C¿¡ ´ëÇÑ Áö½ÄÀÌ ¸¹ÀÌ ºÎÁ·ÇÏ¿©
>
>¿©·¯ºÐµé²² µµ¿òÀ» ûÇÕ´Ï´Ù.
>
>ÄÄÆÄÀÏÀº VC++ ¿¡¼­ Çß½À´Ï´Ù.
>
>°Ë»öÇØ º¸´Ï ºñ½ÁÇÑ °Ô½Ã¹°Àº Àִµ¥ Àú ¿¡·¯¸Þ½ÃÁö´Â ¾Æ´Ñµí Çϱº¿ä..
>

  Hit : 4837     Date : 2003/11/11 03:59



    
3206   SNSÇØÅ·ÀÌ µÇ³ª¿ë? µµ¿ÍÁÖ¼¼¿ä ¤Ð¤Ð¤Ð [2]     ÇÑä¹Î
02/28 329
3205   Ä¡Æ®¿£Áø °í¼öºÐ °è½Ç±î¿ä[1]     rjsdudals123
02/15 183
3204   ¿À·ù Á» ã¾ÆÁÖ¼¼¿ä [1]     marunim
05/30 913
3203 ºñ¹Ð±ÛÀÔ´Ï´Ù  124     minsub87
08/17 1
3202   c¾ð¾î segmentation fault:11 ¿À·ù Áú¹®µå¸³´Ï´Ù![2]     leebk1124
05/21 2003
3201   C++ÇÔ¼ö°ü·Ã Áú¹®ÀÌ¿¡¿ë!![3]     1999dylee
05/11 1836
3200   ÆÄÀ̽ã Áö¹® µå¸³´Ï´Ù.[1]     kksh1107
04/24 1577
3199   ¸®¹ö½ÌÀÇ ¼¼¹ø¤Š ²É - ¿ª¶û-     nninni79
04/20 2281
3198   ´Þ°í³ª ¹®¼­ ½©ÄÚµå[1]     ghjk645
03/24 1598
3197 ºñ¹Ð±ÛÀÔ´Ï´Ù  c¾ð¾î ¼Ò¼ö °ª     adwefq
04/29 0
3196   C¾ð¾î ¼Ò½ºÁú¹®ÀÔ´Ï´Ù![5]     an0088
01/05 5108
3195   C++ /// ºôµå ¿¡·¯ ¤Ð¤Ð[1]     guichanta
08/23 2390
3194 ºñ¹Ð±ÛÀÔ´Ï´Ù  c¾ð¾î µµ¿ÍÁÖ¼¼¿ä¤Ð¤Ð     su6339
04/06 0
3193   ÇØÅ·À» ¹è¿ì·Á°íÇϴµ¥[3]     zoodem04
03/26 4176
3192   c¾ð¾î¸¦ ¹è¿ì°í½Í¾î¿ä ![7]     dwc07238
02/11 4056
3191   ½ºÅÃÀÌ ½×ÀÌ´Â ¹æÇâ¿¡ °üÇؼ­!![1]     hackxx123
12/10 3508
3190   ÇØÅ·Åø¿¡¼­ ip ¾øÀÌ Çϵ忡 ½É´Â°Å¿¡´Â ¾î¶²°Ô ÀÖÀ»±î¿ä?[2]     aowlrgmlals
11/27 4264
3189   C¾ð¾î Çϴµ¥ double ½Ç¼ö¸¦ ³ÖÀºµ¥ ÀÚ²Ù 0.0ÀÌ ³ª¿Í¿ä[2]     fatou10336
11/20 3717
3188   dumpcode.h ÀÌÇØÁ» µµ¿ÍÁÖ¼¼¿ä .[1]     cm6418
11/06 3695
3187   c¾ð¾î ¾Ë°í¸®Áò Áú¹®ÀÔ´Ï´Ù.[3]     alstn8150
10/12 3719
1 [2][3][4][5][6][7][8][9][10]..[161]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org