¤E. °} ¦C »P «ü ¼Ð

9-1 °} ¦C ( Array )

¦b ¹q ¸£ ¸ê ®Æ ¤§ ³B ²z »P ÀÉ ®× ¶¡ ªº ¸ê ®Æ ¥æ ´« ¤¤ , ±` ±` »Ý ­n ¤j ¶q ªº °O ¾Ð ªÅ ¶¡ ¨Ó ¼È ¦s ³o ¨Ç ¸ê ®Æ , ¦ý ¬O ¬° ¤F ¦³ ¨t ²Î , ¦³ ³W «h ªº ©ñ ¸m »P ¼È ¦s , C »y ¨¥ ´£ ¨Ñ ¤F °} ¦C ( array ) ¨Ó Àx ¦s ¸ê ®Æ , ¦] ¦¹ ¤j ¤j ´£ ¤É ¤F µ{ ¦¡ ªº ¤u §@ ®Ä ²v , ¤] ¯à ¥R ¤À ¦³ ®Ä ªº ¨Ó ¨Ï ¥Î °O ¾Ð Åé . C »y ¨¥ ´£ ¨Ñ °} ¦C ªº ¸ê ®Æ «¬ ºA ¥] §t ¤F ¾ã ¼Æ ( int ) , ¯B ÂI ¼Æ ( float ) , ¦r ¤¸ ( char ) , ¦b ¦s ¨ú «¬ ºA ¤è ­± ¤] ´£ ¨Ñ ¤F ÀR ºA ( static ) , ¥~ ³¡ ( extern ) °} ¦C «¬ ºA . ( ¥Î ªk »P ¯S ©Ê ½Ð °Ñ ¦Ò ¬Û Ãö ¤§ ³¹ ¸` ) . ¦Ó °} ¦C ªº ±Æ ¦C ¤è ¦¡ ¥ç ¤À ¬° ¤@ ºû , ¤G ºû , ¤T ºû ... µ¥ µ¥ . §Ú ­Ì ´N ¥H ¤@ ºû »P ¤G ºû °} ¦C ¥[ ¥H °Q ½× .

9-1-1 ¤@ ºû °} ¦C

<1> ¤@ ºû °} ¦C ªº «Å §i ¤è ¦¡ ¦p ¤U ©Ò ­z :

             °}¦Cªº¸ê®Æ«¬ºA     °}¦Cªº¦WºÙ [ °}¦Cªº¤j¤p ] ;
For example : int array1 [ 20 ] ; float array2 [ 25 ] ; char array3 [ 50 ] ;

<2> «Å §i °} ¦C ªº ¦ì ¸m ¬° µ{ ¦¡ ¤§ ³Ì ¤W ºÝ .
<3> ¤@ ºû °} ¦C ªº ±Æ ¦C µ² ºc ¦p ¤U ¹Ï ©Ò ­z . §Ú ­Ì Á| ¨Ò ¤@ °} ¦C ¦W ¥s A ªº °} ¦C , ¨ä °} ¦C ¤j ¤p ¦³ n ­Ó , §Y ¬° A[n] .
           ¢z¢w¢w¢w¢w¢s¢w¢w¢w¢w¢s¢w¢w¢w¢w¢s¢w¢w¢w¢w¢s¢w¢w¢w¢w¢{
           ¢x  A[0]  ¢x  A[1]  ¢x  A[2]  ¢x ...... ¢x A[n-1] ¢x
           ¢|¢w¢w¢w¢w¢r¢w¢w¢w¢w¢r¢w¢w¢w¢w¢r¢w¢w¢w¢w¢r¢w¢w¢w¢w¢}

<4> °} ¦C ¤j ¤p ªº «Å §i , °£ ¤F ¨Ì ¦Û ¤v ªº »Ý ­n ¨Ó ©w ­q ¥~ , ÁÙ »Ý ¨Ì ½s Ķ ¾¹ ¦b ½s Ķ ®É ¤§ °O ¾Ð Åé «¬ ºA ¤Î ¹ê »Ú ¥i ¥Î ¤§ °O ¾Ð Åé ¤j ¤p ¦Ó ©w , ¨Ã ¤£ ¬O ·Q ­n ¦h ¤Ö ´N ¦³ ¦h ¤Ö . ¨Ò ¦p °} ¦C ¦W ¥s A ªº °} ¦C , ¨ä °} ¦C ¤j ¤p ¬° 5 , §Y ¬° A[5] , ¨ä °} ¦C ªº ¦¨ ­û ¤À §O ¬° A[0] , A[1] ,A[2] , A[3] , A[4] ¤­­Ó .
<5> ¦p ¦ó ¦s ¨ú °} ¦C ¤¤ ¤§ ¸ê ®Æ ? §Ú ­Ì ¥i ¥H ¦b «Å §i °} ¦C ®É , «ü ©w ¼Æ ­È µ¹ °} ¦C . ¨Ò ¦p :
                    int score[5]={ 1, 2, 3 ,4 ,5 };

©Î ¬O ¦bµ{ ¦¡ ¹L µ{ ¤¤ «ü ©w ¼Æ ­È µ¹ °} ¦C . ¨Ò ¦p :
                    main()
                    {
                       int score[5];  /* °}¦C«Å§i */

                            .
                            .

                       score[0]=1;    /* µ{¦¡¥»Åé */
                       score[1]=2;
                       score[2]=3;
                       score[3]=4;
                       score[4]=5;
                            .
                            .
                    }

<6> §Ú ­Ì ´N ¤@ ºû °} ¦C ¨Ó Á| ¤@ ¨Ò ¤l »¡ ©ú . ½Ð °Ñ ¦Ò example : 9-1-1 .

           Example 9-1-1 :

               #include < stdio.h >
               main()
               {
                  int count,total=0;
                  int number[10]={ 1,2,3,4,5,6,7,8,9,10 };

                  for( count=0 ; count < 10 ; ++count )
                    {
                       printf("number[%d]=%d\n",count,number[count]);
                       total=total+number[count];
                    }
                  printf("1+2+3+4+5+6+7+8+9+10=%d\n",total);
               }


            °õ ¦æ µ² ªG :

                     number[0]=1
                     number[1]=2
                     number[2]=3
                     number[3]=4
                     number[4]=5
                     number[5]=6
                     number[6]=7
                     number[7]=8
                     number[8]=9
                     number[9]=10
                     1+2+3+4+5+6+7+8+9+10=55


9-1-2 ¤G ºû °} ¦C

<1> ¤G ºû °} ¦C ªº «Å §i ¤è ¦¡ ¦p ¤U ©Ò ­z :

             °}¦Cªº¸ê®Æ«¬ºA     °}¦Cªº¦WºÙ [ ¦C°}¦Cªº¤j¤p ][ ¦æ°}¦C¤j¤p ] ;

           For example :

                    int   array1 [ 10 ][ 20 ] ;
                  float   array2 [ 5 ][ 25 ] ;
                   char   array3 [ 100 ][ 50 ] ;

<2> «Å §i °} ¦C ªº ¦ì ¸m ¬° µ{ ¦¡ ¤§ ³Ì ¤W ºÝ .
<3> ¤G ºû °} ¦C ªº ±Æ ¦C µ² ºc ¦p ¤U ¹Ï ©Ò ­z . §Ú ­Ì Á| ¨Ò ¤@ °} ¦C ¦W ¥s A ªº °} ¦C , ¨ä ¦C °} ¦C ¤j ¤p ¦³ m ­Ó , ¦æ °} ¦C ¤j ¤p ¦³ n ­Ó , §Y ¬° A[m][n] .
            ¦æ (column)
         ¢z¢w¢w¢w¢w¢w¢s¢w¢w¢w¢w¢w¢s¢w¢w¢w¢w¢w¢s¢w¢w¢w¢w¢s¢w¢w¢w¢w¢w¢w¢{
      ¦C ¢x A[0][0]  ¢x A[0][1]  ¢x A[0][2]  ¢x ...... ¢xA[0][n-1]   ¢x
         ¢u¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢w¢t
    (row)¢x A[1][0]  ¢x A[1][1]  ¢x A[1][2]  ¢x ...... ¢xA[1][n-1]   ¢x
         ¢u¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢w¢t
         ¢x A[2][0]  ¢x A[2][1]  ¢x A[2][2]  ¢x ...... ¢xA[2][n-1]   ¢x
         ¢u¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢w¢t
         ¢x    .     ¢x    .     ¢x    .     ¢x   .    ¢x     .      ¢x
         ¢u¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢w¢t
         ¢x    .     ¢x    .     ¢x    .     ¢x   .    ¢x     .      ¢x
         ¢u¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢q¢w¢w¢w¢w¢q¢w¢w¢w¢w¢w¢w¢t
         ¢xA[m-1][0] ¢xA[m-1][1] ¢xA[m-1][2] ¢x ...... ¢xA[m-1][n-1] ¢x
         ¢|¢w¢w¢w¢w¢w¢r¢w¢w¢w¢w¢w¢r¢w¢w¢w¢w¢w¢r¢w¢w¢w¢w¢r¢w¢w¢w¢w¢w¢w¢}

<4> °} ¦C ¤j ¤p ªº «Å §i , °£ ¤F ¨Ì ¦Û ¤v ªº »Ý ­n ¨Ó ©w ­q ¥~ , ÁÙ »Ý ¨Ì ½s Ķ ¾¹ ¦b ½s Ķ ®É ¤§ °O ¾Ð Åé «¬ ºA ¤Î ¹ê »Ú ¥i ¥Î ¤§ °O ¾Ð Åé ¤j ¤p ¦Ó ©w , ¨Ã ¤£ ¬O ·Q ­n ¦h ¤Ö ´N ¦³ ¦h ¤Ö . ¨Ò ¦p °} ¦C ¦W ¥s A ªº °} ¦C , ¨ä ¦C °} ¦C ¤j ¤p ¬° 2 , ¦æ °} ¦C ¤j ¤p ¦³ 5­Ó , §Y ¬° A[2][5] , ¨ä °} ¦C ªº ¦¨ ­û ¤À §O ¬° A[0][0] , A[0][1] , A[0][2] , A[0][3] , A[0][4] , A[1][0] , A[1][1] , A[1][2] , A[1][3] , A[1][4]¤Q ­Ó .
<5> ¦p ¦ó ¦s ¨ú °} ¦C ¤¤ ¤§ ¸ê ®Æ ? §Ú ­Ì ¥i ¥H ¦b «Å §i °} ¦C ®É , «ü ©w ¼Æ ­È µ¹ °} ¦C . ¨Ò ¦p :
                  int score1[2][5]={{ 1, 2, 3, 4, 5 },{ 5, 4, 3, 2, 1 }};

©Î ¬O ¦b µ{ ¦¡ ¹L µ{ ¤¤ «ü ©w ¼Æ ­È µ¹ °} ¦C . ¨Ò ¦p :
                    main()
                    {
                       int score1[2][5];  /* °}¦C«Å§i */

                            .
                            .

                       score1[0][0]=1;    /* µ{¦¡¥»Åé */
                       score1[0][1]=2;
                       score1[0][2]=3;
                       score1[0][3]=4;
                       score1[0][4]=5;
                       score1[1][0]=5;
                       score1[1][1]=4;
                       score1[1][2]=3;
                       score1[1][3]=2;
                       score1[1][4]=1;
                            .
                            .
                    }

<6> §Ú ­Ì ´N ¥Î ¤E ¤E ­¼ ªk ªí ªº ¨Ò ¤l ¨Ó »¡ ©ú ¤G ºû °} ¦C ªº ¨Ï ¥Î . ½Ð °Ñ ¦Ò example : 9-1-2 .

           Example 9-1-2 :

               #include < stdio.h >
               main()
               {
                 int count,count1;
                 int _nine[2][9]={{1,2,3,4,5,6,7,8,9},
                                  {1,2,3,4,5,6,7,8,9}};

                 printf("9 x 9 list :\n");

                 for( count=0 ; count< 9 ; ++count )
                  for( count1=0 ; count1<9 ; ++count1 )
                   printf("%2dx%2d=%2d\n",_nine[0][count],_nine[1][count1]
                                         ,_nine[0][count]*_nine[1][count1]);

                }


            °õ ¦æ µ² ªG :

                        9 x 9 list :
                         1x 1= 1
                         1x 2= 2
                         1x 3= 3
                         1x 4= 4
                         1x 5= 5
                         1x 6= 6
                         1x 7= 7
                         1x 8= 8
                         1x 9= 9
                         2x 1= 2
                         2x 2= 4

                            .
                            .
                            .
                            .

                         9x 5=45
                         9x 6=54
                         9x 7=63
                         9x 8=72
                         9x 9=81


9-1-3 ¦r ¤¸ °} ¦C

<1> ¦r ¤¸ °} ¦C ªº «Å §i ¤è ¦¡ ¦p ¤U ©Ò ­z :

             char    °}¦Cªº¦WºÙ [ °}¦Cªº¤j¤p ] ;

             char    °}¦Cªº¦WºÙ [ ¦C°}¦Cªº¤j¤p ][ ¦æ°}¦C¤j¤p ] ;

           For example :

                    char   array1 [ 10 ] ;
                    char   array2 [ 5 ][ 25 ] ;

<2> «Å §i °} ¦C ªº ¦ì ¸m ¬° µ{ ¦¡ ¤§ ³Ì ¤W ºÝ .
<3> °} ¦C ¤j ¤p ªº «Å §i , °£ ¤F ¨Ì ¦Û ¤v ªº »Ý ­n ¨Ó ©w ­q ¥~ , ÁÙ »Ý ¨Ì ½s Ķ ¾¹ ¦b ½s Ķ ®É ¤§ °O ¾Ð Åé «¬ ºA ¤Î ¹ê »Ú ¥i ¥Î ¤§ °O ¾Ð Åé ¤j ¤p ¦Ó ©w , ¨Ã ¤£ ¬O ·Q ­n ¦h ¤Ö ´N ¦³ ¦h ¤Ö .
<4> ¦p ¦ó ¦s ¨ú °} ¦C ¤¤ ¤§ ¸ê ®Æ ? §Ú ­Ì ¥i ¥H ¦b «Å §i °} ¦C ®É , «ü ©w ¦r ¤¸ µ¹ °} ¦C . ¨Ò ¦p :
              ¨Ò¤@ :
                      int string[6]={'A','B','C','D','E','\0'};

                 ©Î int string[5]="ABCDE";

              ¨Ò¤G :
                      int string1[2][6]={{'A','B','C','D','E','\0'},
                                                  {'F','G','H','I','J','\0'}};

                 ©Î int string1[2][5]={ "ABCDE","FGHIJ" };

©Î ¬O ¦b µ{ ¦¡ ¹L µ{ ¤¤ «ü ©w ¼Æ ­È µ¹ °} ¦C . ¨Ò ¦p :
                    main()
                    {
                       int string[6];  /* °}¦C«Å§i */

                            .
                            .

                       score1[0]='M';    /* µ{¦¡¥»Åé */
                       score1[1]='E';
                       score1[2]='R';
                       score1[3]='R';
                       score1[4]='Y';
                       score1[5]='\0';

                       strcpy(string,"MERRY"); /* ±N "MERRY" ¦r¦ê«þ¨©¦Ü
                                                  string °}¦C¤¤ */
                            .
                            .
                    }

<6> ¥Ñ ©ó ¥H ¤W ±Ô ­z , §Ú ­Ì ª¾ ¹D ¦p ªG ¦r ¤¸ °} ¦C ¥H ¦r ¤¸ ªº ¤è ¦¡ ¨Ó ¦s ¨ú °} ¦C , «h ¶· ¥[ µ² §ô ¦r ¤¸ \0 ©ó °} ¦C ªº ³Ì ¥½ ºÝ , ªí ¥Ü ¦¹ ¦r ¤¸ °} ¦C ªº µ² §ô . ¨Ò ¦p <3> ¶µ ¨Ò ¤@ ©Ò ­z . ¦p ªG ¦r ¤¸ °} ¦C ¥H ¦r ¦ê ªº ¤è ¦¡ ¨Ó ¦s ¨ú °} ¦C , «h C ½s Ķ ¾¹ ·| ¦Û °Ê ¦b ¦r ¦ê ³Ì ¥½ ºÝ ¥[ ¤W µ² §ô ¦r ¤¸ \0 ªí ¥Ü ¦¹ ¦r ¤¸ °} ¦C ªº µ² §ô , ©Ò ¥H §Ú ­Ì ¤£ »Ý ¦Û ¦æ ¥[ ¤J . ¨Ò ¦p <3> ¶µ ¨Ò ¤G ©Ò ­z . ( \0 ªí ¦¡ ¹s ªº ¤K ¶i ¦ì ¼Æ )
<7> §Ú ­Ì ´N ¨Ó Á| ¤@ ¨Ò ¤l »¡ ©ú . ½Ð °Ñ ¦Ò example : 9-1-3 .

           Example 9-1-3 :

               #include < stdio.h >
               main()
               {
                 char string1[5]={'A','B','C','D','E'};
                 char string2[6]={'A','B','C','D','E','\0'};
                 char string3[6]="ABCDE\0";
                 char string4[5]="ABCDE";

                 printf("string1 = \"%s\"\n",string1);
                 printf("string2 = \"%s\"\n",string2);
                 printf("string3 = \"%s\"\n",string3);
                 printf("string4 = \"%s\"\n",string4);

               }


            °õ ¦æ µ² ªG :

                        string1 = "ABCDEÿABCDE"  /*¦¹¦r¦ê¬O§_¦³¨Ç¤£¤@¼Ë?*/
                        string2 = "ABCDE"
                        string3 = "ABCDE"
                        string4 = "ABCDE"


9-1-4 °} ¦C »P °ò ¥» ¿é ¥X / ¿é ¤J ¨ç ¼Æ ªº ·f °t

µL ½× ¬O ¾ã ¼Æ , ¯B ÂI ¼Æ ©Î ¦r ¤¸ °} ¦C (¦r¦ê ) §¡ ¥i »P °ò ¥» ¿é ¥X / ¿é ¤J ¨ç ¼Æ ªº ·f °t . ¨Ò ¦p ¤@ ¦W ¥s array1 ªº ¦r ¤¸ °} ¦C :

                     printf("%s\n",array1);
                     puts(array1);
                     scanf("%s",array1);
                     gets(array1);

©Ò ¥H USER ¥i ¥H ¦Û ¦æ °Ñ ¦Ò ¬Û Ãö ªº ³¹ ¸` ¨Ï ¥Î ¤§ . ¦b ¦¹ ¸É ¥R ¤@ ÂI , ¤W ­z ©Ò ±Ô ­z scanf ¨ç ¼Æ ¬O ¥G ¤Ö ¤@ ­Ó & (¦ì§}¹Bºâ¤¸ ) ? ? ? ¨S ¿ù ! ¨º ¬O ¦] ¬°°} ¦C ¥» ¨­ ªº ¦W ºÙ §Y ¥N ªí ¨ä ¦ì §} ¤§ ©Ò ¦b , ©Ò ¥H ¤£ »Ý ¦b °} ¦C ¦W ºÙ «e ¥[ ¤W & ²Å ¸¹ ¨Ó ¥N ªí ¦ì §} .


9-2 «ü ¼Ð ( pointer )

Ãö ©ó «ü ¼Ð , ¹ï ©ó ¤@ ¨Ç C »y ¨¥ ªì ¾Ç ªÌ ¦Ó ¨¥ ¬O ¤£ ©ö ÁA ¸Ñ ªº ¤@ ºØ «Ü ©â ¶H , ¦ý ¤S «Ü ¹ê ¥Î ªº ¤u ¨ã . ¬Û «H ¥u ­n ¤j ®a ¹ï C »y ¨¥ ¦³ ¿³ ½ì , §Ú ­Ì «Ü §Ö ´N ¯à ¶i ¤J «ü ¼Ð ªº ¥@ ¬É ¸Ì . »¡ ¤F ³o »ò ¦h , ¨º ¦ó ¿× «ü ¼Ð ©O ? ² ³æ ªº »¡ " ¥¦ ¬O ¤@ ­Ó ¥Î ¨Ó «ü ¥Ü ¸ê ®Æ ¦s ¦b ©ó °O ¾Ð Åé ¤¤ ªº ¦ì §} ¼Ð ¥Ü ¾¹ " , ² ºÙ «ü ¼Ð . ¥Ñ «ü ¼Ð ªº ¹B ¥Î ¸Ì , ¨Ï §Ú ­Ì ÁA ¸Ñ ¨ì ¸ê ®Æ »P ¦ì §} ¶¡ ªº Ãö «Y , ¶i ¦Ó ¹ï °O ¾Ð Åé °t ¸m ¦³ «Ü ¤j ªº À° §U . ½Ð °Ñ ¦Ò ¤U ¦C ³¹ ¸` .

9-2-1 «ü ¼Ð ªº °ò ¥» Æ[ ©À

<1> ¦b C »y ¨¥ ¤¤ , «ü ¼Ð ÅÜ ¼Æ ªº «Å §i ¤è ¦¡ ¦p ¤U :
               ÅܼƸê®Æ«¬ºA   *ÅܼƦWºÙ ;

           ¨Ò¦p:

                int  *p ;
¥Ñ ¥H ¤W ªº «Å §i , ªí ¥Ü ¤F ¤T ¥ó ¨Æ [1] p ¬° «ü ¼Ð ÅÜ ¼Æ . [2] p ¥N ªí ¤@ ­Ó ¦ì §} , ¦Ó *p ¥N ªí ¦¹ ¦ì §} ªº ¸ê ®Æ . [3] p ©Ò «ü ¦V ¦¹ ¦ì §} ¤§ ÅÜ¼Æ «¬ ºA ¬° ¾ã ¼Æ ( int ) .
<2> «ü ¼Ð ÅÜ ¼Æ «Å §i ªº Ãö Áä ¦r ¬° " * " , ¦Ó «ü ¼Ð ÅÜ ¼Æ ªº ¸ê ®Æ «¬ ºA ¤] ¤À ¬° ¾ã ¼Æ ( int ) , ¯B ÂI ¼Æ ( float ) , ¦r ¤¸ ( char ) ¤T ºØ .
<3> §Ú ­Ì ´¿ ¦b °ò ¥» ¿é ¥X ¤J ¨ç ¼Æ ªº ³¹ ¸` ´£ ¨ì ¦ì §} ¹B ºâ ¤¸ " & " »P ¨ç ¼Æ scanf( ) ·f °t ¨Ï ¥Î , §Ú ­Ì ª¾ ¹D ¦b ÅÜ ¼Æ «e ¥[ ¤W " & " ²Å ¸¹ ªí ¥Ü ¸Ó ÅÜ ¼Æ ©Ò ¦b ªº ¦ì §} , ¬Û ¹ï ©ó «ü ¼Ð ªº ¥Î ªk , ¨ä ¹ê ¬O «D ±` ¬Û ¦ü ªº . ½Ð °Ñ ¦Ò Example 9-2-1 .

           Example 9-2-1 :

               #include < stdio.h >
               main()
               {
                 int x=10;
                 int *y;
                 y=&x;
                 printf(" x = %d\n", x);
                 printf("&x = %x\n",&x);
                 printf("*y = %d\n",*y);
                 printf(" y = %x\n", y);
               }


           °õ¦æµ²ªG :

                       x = 10
                      &x = ffda
                      *y = 10
                       y = ffda


9-2-2 «ü ¼Ð »P ¨ç ¼Æ ¶¡ ªº Ãö «Y
Ãö ©ó ¨ç ¼Æ ©I ¥s ªº ¤è ¦¡ ¤¤ , Call by value ªº ¤Þ ¼Æ ¶Ç »¼ ¤è ¦¡ , ³Q ©I ¥s ¨ç ¼Æ ¤£ ¯à ª½ ±µ §ó §ï ©I ¥s ¨ç ¼Æ ¤¤ ªº ÅÜ ¼Æ , ¦ý ¦p ªG ¬O ¥H «ü ¼Ð ·í §@ ¨ç ¼Æ ªº ¤Þ ¼Æ ( Call by reference ) , «h ¤W ­z ªº ª¬ ªp §¡ ªï ¤b ¦Ó ¸Ñ , ¦Ó ¥B ¤] ¤£ ¨ü ¨ç ¼Æ ªð ¦^ ­È ( return ) ¥u ¯à ¦³ ¤@ ­Ó ªº ¼v ÅT . ½Ð °Ñ ¦Ò Example 9-2-2 .


           Example 9-2-2 :

               #include < stdio.h >
               main()
               {
                 int m=3,n=4;
                 printf(" m = %d  n= %d \n\n",m,n);
                 change(&m,&n);
                 printf(" m = %d  n= %d \n",m,n);
               }

               change(x,y)
               int *x,*y;
               {
                 int temp;
                 temp=*x;
                 *x=*y;
                 *y=temp;
               }


          °õ¦æµ²ªG :

                      m = 3  n= 4

                      m = 4  n= 3


9-2-3 «ü ¼Ð »P °} ¦C ªº Ãö «Y

§Ú ­Ì ¾Ç ²ß ¤F «ü ¼Ð 9-1-1 ªº ½Ò µ{ , §Ú ­Ì ª¾ ¹D ÅÜ ¼Æ «e »Ý ¥[ " & " ²Å ¸¹ ©Î ¨Ï ¥Î «ü ¼Ð ÅÜ ¼Æ ¤~ ¯à «ü ¥Ü ÅÜ ¼Æ ©Ò ¦b ¦ì §} , ¦ý §Ú ­Ì ¤] ´£ ¨ì °} ¦C ¥» ¨­ ¤] ¬O ¤@ ­Ó ¦ì §} , ©Ò ¥H §Ú ­Ì ¥i ¥H ±N «ü ¼Ð »P °} ¦C ªº Ãö «Y ¨Ó °µ ¤@ ¹ï ¤ñ . ¨Ò ¦p : ¦³ ¤@ ¾ã ¼Æ °} ¦C ¦W ¬° array , ¨ä °} ¦C ¤j ¤p ¬° ¤­ ­Ó , ¨ä ¤º ®e ¤À §O ¬O 1,2,3,4,5 .

           ¨Ò¦p :

                   int array[5]={ 1,2,3,4,5 };

                °}¦C¦ì§}                «ü¼Ð¬Û¹ï¦ì§}
                          ¢z¢w¢w¢w¢w¢{
                array[0]  ¢x   1    ¢x  *(array+0)
                          ¢u¢w¢w¢w¢w¢t
                array[1]  ¢x   2    ¢x  *(array+1)
                          ¢u¢w¢w¢w¢w¢t
                array[2]  ¢x   3    ¢x  *(array+2)
                          ¢u¢w¢w¢w¢w¢t
                array[3]  ¢x   4    ¢x  *(array+3)
                          ¢u¢w¢w¢w¢w¢t
                array[4]  ¢x   5    ¢x  *(array+4)
                          ¢|¢w¢w¢w¢w¢}

²{ ¦b §Ú ­Ì ¹ï «ü ¼Ð »P °} ¦C ªº Ãö «Y ¬O ¤£ ¬O ¤w ¸g ¦³ ¤@ ÂI ·§ ©À ¤F ©O ? §Ú ­Ì ´N ®³ ¥H ¤W ªº ¨Ò ¤l ¨Ó ¹ê °µ ¤@ ¹M , ½Ð °Ñ ¦Ò Example 9-2-3 .

           Example 9-2-3 :

               #include < stdio.h >
               main()
               {
                 int array[5]={ 1,2,3,4,5 };
                 int count;

                 for ( count=0 ; count<5 ; ++count )
                    printf("array[%d]=%d <-----> *\(array+%d\)=%d\n",
                                   count,array[count],count,*(array+count));
               }


           °õ¦æµ²ªG :

                      array[0]=1 <-----> *(array+0)=1
                      array[1]=2 <-----> *(array+1)=2
                      array[2]=3 <-----> *(array+2)=3
                      array[3]=4 <-----> *(array+3)=4
                      array[4]=5 <-----> *(array+4)=5


9-2-4 «ü ¼Ð »P ¦r ¤¸ °} ¦C ( ¦r ¦ê ) ¶¡ ªº Ãö «Y

¦³ ¤F 9-2-3 ªº Æ[ ©À «á , «K «Ü ®e ©ö ¾r ¶¿ ³o ­Ó ³¹ ¸` . §Ú ­Ì «Ü §Ö ªº ¨Ó °Ñ ¦Ò Example 9-2-4 ¨Ó ³z µø «ü ¼Ð »P ¦r ¦ê ¤§ ¶¡ ªº Ãö «Y .


           Example 9-2-4 :

               #include < stdio.h >
               main()
               {
                 char string[7]="POINTER";
                 int count;

                 for ( count=0 ; count<7 ; ++count )
                    printf("string[%d]=%c <-----> *\(string+%d\)=%c\n",
                                   count,string[count],count,*(string+count));
               }


           °õ¦æµ²ªG :

                     string[0]=P <-----> *(string+0)=P
                     string[1]=O <-----> *(string+1)=O
                     string[2]=I <-----> *(string+2)=I
                     string[3]=N <-----> *(string+3)=N
                     string[4]=T <-----> *(string+4)=T
                     string[5]=E <-----> *(string+5)=E
                     string[6]=R <-----> *(string+6)=R


¦^ SEE «ä C ±Ð «Ç