1-4.ÇÔ¼öÀÇ È®Àå

1.µðÆúÆ® Àμö

µðÆúÆ®(Default)´Â ±âº»°ª, ³»Á¤Ä¡¶ó´Â ¶æÀÌ¸ç º°´Ù¸¥ ÁöÁ¤ÀÌ ¾øÀ» ¶§ Àû¿ëµÇ´Â °ªÀÌ´Ù. ÀÏÀÏÀÌ ¸ðµç °ÍÀ» ´Ù ÁöÁ¤Çϱâ´Â ¹ø°Å·Î¿ö ±âº»°ªÀ» Á¤ÇØ µÎ°í º¯È­°¡ ÀÖ´Â ºÎºÐ¸¸ ¹àÈ÷´Â ¹æ½ÄÀÌ ÈçÈ÷ »ç¿ëµÈ´Ù. ¿¹¸¦ µé¾î ¼ø´ñ±¹Áý¿¡¼­ "¿©±â µÎ ±×¸©¿ä" ÇÏ¸é ¼ø´ñ±¹ µÎ ±×¸©À» ÀǹÌÇÑ´Ù. ¼ø´ñ±¹Áý¿¡ ¼ú±¹À̳ª ÇØÀå±¹µµ ÆÈÁö¸¸ µðÆúÆ®´Â ¼ø´ñ±¹ÀÌ´Ù.

ÄÄÇ»ÅÍ È¯°æÀ̳ª ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡µµ µðÆúÆ®´Â ÈçÈ÷ »ç¿ëµÈ´Ù. ¼öÄ¡ »ó¼ö¿¡ º°´Ù¸¥ ÁöÁ¤ÀÌ ¾øÀ¸¸é ¾ç¼ö¸¦ ÀǹÌÇϹǷΠ+ ±âÈ£¸¦ ÀÏÀÏÀÌ ºÙÀÌÁö ¾Ê¾Æµµ µÈ´Ù. Áï ºÎÈ£ÀÇ µðÆúÆ®´Â +ÀÌ´Ù. ¹°·Ð µðÆúÆ®´Â ¾îµð±îÁö³ª »ý·«½ÃÀÇ ±âº»°ªÀÏ »ÓÀ̾ -23 ½ÄÀ¸·Î À½¼ö ºÎÈ£¸¦ ¸í½ÃÀûÀ¸·Î ºÙÀÌ¸é ¹«½ÃµÈ´Ù.

µðÆúÆ® Àμö´Â ÇÔ¼öÀÇ ¼±¾ðºÎ¿¡ = ±âÈ£¿Í ±âº»°ªÀÌ Á¤ÀǵǾî ÀÖ´Â ÀμöÀÌ´Ù. È£ÃâºÎ¿¡ º°´Ù¸¥ ÁöÁ¤ÀÌ ¾øÀ¸¸é ±âº»°ªÀ» ¾Ë¾Æ¼­ Àû¿ëÇÑ´Ù. ¹°·Ð °ªÀ» ¸í½ÃÀûÀ¸·Î Àü´ÞÇÏ¸é ±âº»°ªÀº ¹«½ÃµÈ´Ù.

 

defpara

#include <stdio.h>

 

int GetSum(int from, int to, int step = 1, int base = 0);

 

int main()

{

     printf("%d\n", GetSum(1, 10));

     printf("%d\n", GetSum(1, 10, 2));

     printf("%d\n", GetSum(1, 10, 2, 10));

}

 

int GetSum(int from, int to, int step/* = 1*/, int base/* = 0*/)

{

     int sum = base;

     for (int i = from; i <= to; i += step) {

          sum += i;

     }

     return sum;

}

½ÇÇà°á°ú

55

25

35

 

GetSum ÇÔ¼ö´Â base¿¡ from ~ toÀÇ Çհ踦 ´õÇ쵂 step ´ÜÀ§·Î °Ç³Ê¶Ú´Ù. ÀÌ Áß stepÀº 1·Î, base´Â 0À¸·Î ¹«³­ÇÑ ±âº»°ªÀÌ ÁöÁ¤µÇ¾î ÀÖ¾î 0ºÎÅÍ ´©ÀûÇϸç 1¾¿ Áõ°¡ÇÑ´Ù. GetSum(1, 10)À¸·Î È£ÃâÇϸé 1¿¡¼­ 10±îÁö 1¾¿ Áõ°¡Çϸç 0¿¡¼­ºÎÅÍ Çհ踦 ±¸Ç϶ó´Â ¶æÀÌ´Ù. È£ÃâºÎ¿¡¼­ »ý·«ÇÑ step°ú base´Â ±âº»°ªÀÎ 1°ú 0ÀÌ Àû¿ëµÈ´Ù.

´©ÀûÇÕÀ» ±¸ÇÒ ¶§´Â 0ºÎÅÍ ½ÃÀÛÇÏ°í 1¾¿ Áõ°¡ÇÏ´Â°Ô º¸ÅëÀÌ´Ù. À¢¸¸ÇÏ¸é ¹«³­ÇÑ °ªÀ» ¾²Áö¸¸ ÇÊ¿äÇÒ °æ¿ì Àμö°ªÀ» Á÷Á¢ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. GetSum(1, 10, 2)´Â step¿¡ 2¸¦ ÁöÁ¤ÇÏ¿© 2¾¿ °Ç³Ê¶Ù¸ç Çհ踦 ±¸ÇÑ´Ù. step Àμö¸¦ ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇßÀ¸¹Ç·Î µðÆúÆ®ÀÎ 1Àº ¹«½ÃµÈ´Ù. baseµµ Àû¿ëÇÏ¿© ¸ðµç Àμö¸¦ ´Ù ÁöÁ¤ÇÏ¸é ¿©±â¼­ºÎÅÍ ÇÕ°è ´©ÀûÀ» ½ÃÀÛÇÑ´Ù.

ÇÔ¼öÀÇ Àμö°¡ ¸¹À¸¸é º¯È­¸¦ ÁÙ ¿©Áö°¡ ¸¹¾Æ È°¿ë¼ºÀÌ Áõ°¡ÇÑ´Ù. ÇÏÁö¸¸ À¢¸¸ÇÏ¸é ¹Ù²ÙÁö ¾Ê´Â ¹«³­ÇÑ °ª±îÁö Àμö·Î ¹ÞÀ¸¸é È£ÃâÇÒ ¶§ ÀÏÀÏÀÌ Àü´ÞÇØ¾ß ÇÏ´Ï ºÒÆíÇÏ´Ù. µðÆúÆ® Àμö´Â »ý·«Çصµ »ó°ü¾ø´Â Àμö¿¡ ´ëÇØ ±âº»°ªÀ» ÁöÁ¤ÇÏ¿© È°¿ë¼º°ú ÆíÀǼºÀ» µ¿½Ã¿¡ ¸¸Á·½ÃÅ°´Â ±â¹ýÀÌ´Ù. °³³äÀº °£´ÜÇ쵂 ¸î °¡Áö ±ÔÄ¢¸¸ ÁÖÀÇÇÏ¸é µÈ´Ù.

 

¡á µðÆúÆ® Àμö´Â ¿øÇü¿¡ ÁöÁ¤Çϸç Á¤ÀǺο¡´Â ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù. µÎ ±ºµ¥ ¸ðµÎ ÁöÁ¤µÇ¾î ÀÖ°í ±âº»°ªÀÌ ´Ù¸¦ °æ¿ìÀÇ ¸ðÈ£ÇÔÀ» Á¦°ÅÇϱâ À§ÇÑ ±ÔÄ¢ÀÌ´Ù. Á¤ÀǺο¡´Â Àμö ¸ñ·Ï¸¸ Àû°Å³ª ±âº»°ªÀ» ÁÖ¼® ó¸®ÇÏ¿© ±âº»°ªÀÌ Àִٴ ǥ½Ã¸¸ ÇØ µÐ´Ù.

¡á µðÆúÆ® Àμö´Â ¿À¸¥ÂʺÎÅÍ ¼ø¼­´ë·Î ÁöÁ¤ÇÒ ¼ö ÀÖÀ¸¸ç °¡¿îµ¥ Àμö´Â ÁöÁ¤ÇÒ ¼ö ¾ø´Ù. »ý·« °¡´ÉÇÑ Àμö¸¦ µÚÂÊ¿¡ ¹èÄ¡ÇØ¾ß ÇÑ´Ù.

 

int GetSum(int from, int to = 10, int step = 1, int base = 0);        // °¡´É

int GetSum(int from, int to = 10, int step, int base = 0);             // ºÒ°¡´É

int GetSum(int from = 1, int to = 10, int step = 1, int base = 0);       // °¡´É

int GetSum(int from = 1, int to, int step = 1, int base = 0);          // ºÒ°¡´É

 

µÚÂÊÀÇ to, step, base ¼Â ´Ù ±âº»°ªÀ» ÁÙ ¼ö´Â ÀÖÁö¸¸ stepÀº ÁÖÁö ¾Ê°í to¿¡¸¸ ±âº»°ªÀ» ÁöÁ¤ÇÒ ¼ö´Â ¾ø´Ù. ¸ðµç Àμö¿¡ ±âº»°ªÀ» ÁöÁ¤ÇÒ ¼ö ÀÖÁö¸¸ Áß°£¿¡ Çϳª°¡ ºüÁ®¼­´Â ¾ÈµÈ´Ù.

¡á µðÆúÆ® Àμö¸¦ °¡Áø ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§µµ µÚÂÊÀÇ Àμö¸¸ »ý·«ÇÒ ¼ö ÀÖÀ¸¸ç Áß°£ÀÇ ÇÑ Àμö¸¦ »ý·«ÇÒ ¼ö ¾ø´Ù.

 

GetSum(1, 10, , 100);

 

stepÀº 1À» ±×´ë·Î ¾²°í base¸¸ 100À¸·Î ÁöÁ¤ÇÏ°í ½Í´Ù°í Çؼ­ Áß°£¿¡ Àμö Çϳª¸¦ »ý·«Çؼ­´Â ¾ÈµÈ´Ù. ´õ µÚÂÊÀÇ Àμö¸¦ ÁöÁ¤ÇÏ°í ½Í´Ù¸é ¾ÕÂÊ Àμöµµ °ªÀ» ÁÖ¾î GetSum(1, 10, 1, 100);½ÄÀ¸·Î È£ÃâÇÑ´Ù. ¸¸¾à stepÀ» »ý·«ÇÏ°í base¸¦ ÁöÁ¤ÇÒ ÀÏÀÌ ¸¹´Ù¸é µÎ ÀμöÀÇ ¼ø¼­¸¦ ¹Ù²Ù¾î¾ß ÇÑ´Ù.

 

ÇÔ¼ö¸¦ ¸¸µé ¶§´Â ¿ä±¸ »çÇ×À» Àß ÆľÇÇÏ¿© º¯È­°¡ ÀÖÀ»¸¸ÇÑ ºÎºÐÀ» Àμö·Î ¹Þ´Â´Ù. ¿¹¸¦ µé¾î È­¸éÀÇ Æ¯Á¤ ÁÂÇ¥¿¡ ÀûÀ» Ãâ·ÂÇÏ´Â ÇÔ¼ö¶ó¸é ÁÂÇ¥¿Í ÀûÀÇ Á¾·ù¸¦ Àμö·Î ¹Þ¾ÆµéÀδÙ.

 

void OutEnemy(int x, int y, int Enemy);

 

¿ä±¸ »çÇ×ÀÌ ¹Ù²î¸é ÇÔ¼öÀÇ ±â´ÉÀÌ È®ÀåµÈ´Ù. »õ·Î Ãß°¡µÈ Àû ij¸¯ÅÍÁß ÀϺο¡ Åõ¸í 󸮰¡ µé¾î°£´Ù°í Çغ¸ÀÚ. bool Trans Àμö¸¦ Ãß°¡ÇÏ¸é µÉ °Å °°Áö¸¸ ÀÌ·¸°Ô µÇ¸é ±âÁ¸ÀÇ Äڵ尡 ¸ðµÎ ¿µÇâÀ» ¹Þ¾Æ ÀÏÀÏÀÌ false Àμö¸¦ Àü´ÞÇØ¾ß ÇÏ´Â ¹ø°Å·Î¿òÀÌ ÀÖ´Ù.

ÀÌ¹Ì ÀÛ¼ºµÇ¾î ÀÖ´Â ±âÁ¸ Äڵ带 º¸È£ÇÏ·Á¸é OutEnemyTrans ÇÔ¼ö¸¦ µû·Î ¸¸µé ¼ö ÀÖÁö¸¸ ÀÌ·¸°Ô µÇ¸é ºñ½ÁÇÑ Äڵ尡 Áߺ¹µÇ°í ÇÔ¼öÀÇ °³¼ö°¡ ´Ã¾î³ª ¿ª½Ã ºÒÆíÇÏ´Ù. ÀÌ·² ¶§ µðÆúÆ® Àμö°¡ ¿ä±äÇÏ°Ô »ç¿ëµÈ´Ù.

 

void OutEnemy(int x, int y, int Enemy, bool Trans = false);

 

±âÁ¸ÀÇ OutEnemy ÇÔ¼ö È£Ãâ¹®¿¡ ´ëÇØ Trans´Â ±âº»°ª false°¡ Àû¿ëµÇ¾î ¼öÁ¤ÇÒ ÇÊ¿ä ¾ø°í Åõ¸í 󸮰¡ ÇÊ¿äÇÑ Ä³¸¯ÅÍ¿¡ ´ëÇؼ­¸¸ Trans¸¦ true·Î Àü´ÞÇÏ¸é µÈ´Ù. µðÆúÆ® Àμö¸¦ »ç¿ëÇϸé ÇÔ¼öÀÇ ÀÎÅÍÆäÀ̽º°¡ À¯ÁöµÇ¾î ±âÁ¸ Äڵ带 º¸È£Çϸ鼭 ±â´ÉÀ» È®ÀåÇÒ ¼ö ÀÖ´Ù.

2.ÇÔ¼ö ¿À¹ö·Îµù

¸íĪÀº Áߺ¹µÇ¾î¼­´Â ¾ÈµÇ´Â °ÍÀÌ ¿øÄ¢ÀÌ¸ç °°Àº À̸§ÀÇ º¯¼ö¸¦ 2°³ ¼±¾ðÇÒ ¼ö ¾ø´Ù. ±×·¯³ª ÇÔ¼ö´Â ¿¹¿ÜÀûÀ¸·Î Àμö¿­ÀÌ ´Ù¸£¸é °°Àº À̸§À¸·Î Áߺ¹Á¤ÀÇ(overloading) °¡´ÉÇÏ´Ù. µ¿ÀÛÀº °°µÇ ÀμöÀÇ Çü½ÄÀ̳ª ±¸Çö ¹æ½ÄÀÌ ¾à°£ ´Ù¸¥ ÇÔ¼ö´Â À̸§ÀÌ °°¾Æµµ ¹«°üÇÏ´Ù.

 

overload

#include <stdio.h>

 

int Add(int a, int b);

int Add(int a, int b, int c);

double Add(double a, double b);

 

int main()

{

     printf("1 + 2 = %d\n", Add(1, 2));

     printf("3 + 4 + 5 = %d\n", Add(3, 4, 5));

     printf("1.414 + 2.54 = %f\n", Add(1.414, 2.54));

}

 

int Add(int a, int b)

{

     return a + b;

}

 

int Add(int a, int b, int c)

{

     return a + b + c;

}

 

double Add(double a, double b)

{

     return a + b;

}

½ÇÇà°á°ú

1 + 2 = 3

3 + 4 + 5 = 12

1.414 + 2.54 = 3.954000

 

ÀÌ ¿¹Á¦´Â ¼¼ °³ÀÇ Add ÇÔ¼ö¸¦ Á¤ÀÇÇϴµ¥ ´õÇÑ´Ù´Â µ¿ÀÛÀº °°Áö¸¸ ÀμöÀÇ Å¸ÀÔÀ̳ª °³¼ö°¡ ¸ðµÎ ´Ù¸£´Ù. ÇÔ¼ö À̸§Àº °°Áö¸¸ Àμö¿­ÀÌ ´Þ¶ó ¸ðÈ£ÇÏÁö ¾ÊÀ¸¸ç ÄÄÆÄÀÏ·¯´Â È£ÃâºÎÀÇ Àμö¸¦ º¸°í È£ÃâÇÒ ÇÔ¼ö¸¦ Á¤È®ÇÏ°Ô Ã£´Â´Ù. ÇÔ¼ö¸¦ À̸§¸¸À¸·Î ±¸ºÐÇÏ´Â C ¿¡¼­´Â µ¿ÀÛÀÌ °°¾Æµµ ÇÔ¼ö¸íÀ» °¢°¢ ´Ù¸£°Ô ÀÛ¼ºÇØ¾ß ÇÑ´Ù.

 

int AddInt2(int a, int b);

int AddInt3(int a, int b, int c);

double AddDouble2(double a, double b);

 

C Ç¥ÁØ ÇÔ¼ö Áß¿¡µµ ÀÌ·± ¿¹°¡ Àִµ¥ Àý´ë°ªÀ» ±¸ÇÏ´Â ÇÔ¼ö°¡ Àμö ŸÀÔ¿¡ µû¶ó abs, fabs, labs ¼¼ °¡Áö³ª ÀÖ´Ù. ³í¸®ÀûÀÎ µ¿ÀÛÀÌ °°Àº ÇÔ¼ö¸¦ ŸÀÔ¿¡ µû¶ó °ñ¶ó ½á¾ß ÇÏ´Ï ºÒÆíÇÏ´Ù. C++Àº Àμö·Î ±¸ºÐ °¡´ÉÇϸé ÇÔ¼ö¿¡ °°Àº À̸§À» ÁÙ ¼ö ÀÖ°í È£ÃâºÎÀÇ ½ÇÀμö °³¼ö¿Í ŸÀÔ¿¡ µû¶ó Àû´çÇÑ ÇÔ¼ö¸¦ °ñ¶óÁÖ´Ï Æí¸®ÇÏ´Ù. ¸¸¾à ½ÇÀμö¿Í Á¤È®È÷ ÀÏÄ¡ÇÏ´Â ÇÔ¼ö°¡ ¾øÀ¸¸é »ê¼ú º¯È¯ÇÏ¿© ÇÔ¼ö¸¦ ã´Â´Ù.

 

short a = 1, b = 2, c;

c = Add(a, b);

 

µÎ °³ÀÇ short°ªÀ» Àμö·Î Àü´ÞÇߴµ¥ Add(short, short) ÇÔ¼ö´Â ¾øÁö¸¸ short°¡ intÇüÀ¸·Î ÀÚµ¿ º¯È¯ÇÒ ¼ö ÀÖÀ¸¹Ç·Î Add(int, int) ÇÔ¼ö°¡ È£ÃâµÈ´Ù. ÀÏÄ¡ÇÏ´Â ÇÔ¼öµµ ¾ø°í »ê¼úº¯È¯µµ ºÒ°¡´ÉÇÏ¸é ¿¡·¯·Î 󸮵ȴÙ. Add("one", "two")´Â ´ëÀÀµÇ´Â ÇÔ¼ö°¡ ¾ø°í ¹®ÀÚ¿­À» Á¤¼ö³ª ½Ç¼ö·Î ¹Ù²Ü ¼ö ¾øÀ¸´Ï ¿¡·¯ÀÌ´Ù. Add(2.34, 5)ó·³ »ê¼ú º¯È¯ÀÌ ¸ðÈ£ÇÑ °æ¿ìµµ ¿¡·¯ 󸮵ȴÙ.

ÀÌ °æ¿ì´Â 2.34¸¦ Á¤¼ö·Î ¹Ù²Ù¾î Add(int, int)¸¦ È£ÃâÇÒ ¼öµµ ÀÖ°í 5¸¦ 5.0À¸·Î ¹Ù²Ù¾î Add(double, double)¸¦ È£ÃâÇÒ ¼öµµ ÀÖ´Ù. ÄÄÆÄÀÏ·¯´Â ¸ðÈ£ÇÑ »óȲ¿¡ ´ëÇؼ­´Â ¸íÈ®ÇÑ È®ÀÎÀ» ¿ä±¸ÇÑ´Ù. Add((int)2.34, 5)³ª Add(2.34, 5.0)À¸·Î Àǻ縦 ¸íÈ®È÷ Ç¥ÇöÇØ¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¿¡·¯´Â ¾Æ´ÏÁö¸¸ ¿ª½Ã À§ÇèÇÏ´Ù.

 

ptroverload

#include <stdio.h>

 

void sub(int a) { printf("int : %d\n", a); }

void sub(int *a) { printf("pointer : %p\n", a); }

 

int main()

{

     int i = 1234, *pi = &i;

 

     sub(i);

     sub(pi);

     sub(NULL);

}

½ÇÇà°á°ú

int : 1234

pointer : 004FF9C8

int : 0

 

Á¤¼öÇüÀ» ¹Þ´Â sub ÇÔ¼ö¿Í Á¤¼öÇü Æ÷ÀÎÅ͸¦ ¹Þ´Â sub ÇÔ¼ö°¡ Áߺ¹ Á¤ÀǵǾî ÀÖ´Ù. sub(i), sub(pi)¿¡ ´ëÇØ È£ÃâÇÒ ÇÔ¼ö´Â ¸íÈ®ÇÏÁö¸¸ sub(NULL)ÀÌ ¾Ö¸ÅÇÏ´Ù. NULLÀº Á¤¼ö 0À¸·Î º¼ ¼öµµ ÀÖ°í ³Î Æ÷ÀÎÅͷεµ º¼ ¼ö Àִµ¥ ÄÄÆÄÀÏ·¯´Â NULLÀ» Á¤¼ö·Î Çؼ®ÇÑ´Ù. sub(NULL)¿¡ ´ëÇØ Æ÷ÀÎÅÍ°¡ È£ÃâµÇ±â¸¦ ¹Ù·¨´Ù¸é sub((int *)NULL)·Î ij½ºÆÃÇؼ­ È£ÃâÇØ¾ß ÇÑ´Ù.

¿À¹ö·ÎµùÀº Æí¸®ÇÑ ±â´ÉÀÌÁö¸¸ ÀÌó·³ ŸÀÔÀÌ ¾Ö¸ÅÇÑ °æ¿ì ¾û¶×ÇÑ ÇÔ¼ö°¡ È£ÃâµÇ´Â ¸ÍÁ¡ÀÌ ÀÖ´Ù. ±×·¡¼­ ¸®ÅÍ·²¿¡ ´ëÇؼ­µµ L, U, F µûÀ§ÀÇ Á¢¹Ì¸¦ ºÙ¿© Á¤È®ÇÑ Å¸ÀÔÀ» ÁöÁ¤ÇÏ´Â ¹®¹ýÀÌ Á¦°øµÇ¸ç ŸÀÔÀ» ±¸ºÐÇÏÁö ¸øÇÏ´Â #defineº¸´Ù ŸÀÔÀÌ Á¤È®ÇÑ const »ó¼ö¸¦ ±ÇÀåÇÑ´Ù.

°°Àº À̸§À¸·Î ÇÔ¼ö¸¦ Áߺ¹ Á¤ÀÇÇÒ ¼ö ÀÖ´Â ÀÌÀ¯´Â Àμö¿­À» º¸°í È£ÃâÇÒ ÇÔ¼ö¸¦ °áÁ¤ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. È£ÃâºÎ¸¸À¸·Î ¾î¶² ÇÔ¼ö¸¦ ¼±ÅÃÇÒÁö ¸íÈ®È÷ ±¸ºÐµÇÁö ¾Ê´Â ¸ðÈ£ÇÑ °æ¿ì´Â ¿À¹ö·ÎµùÇÒ ¼ö ¾ø´Ù.

 

¡á Çü½Ä ÀμöÀÇ À̸§¸¸ ´Ù¸¥ °æ¿ì´Â ¾ÈµÈ´Ù. ÇÔ¼öÀÇ ¿øÇü¿¡¼­ Çü½Ä ÀμöÀÇ À̸§Àº ÀÓ½ÃÀûÀÎ ¸íĪÀÏ »Ó º° Àǹ̰¡ ¾ø°í ÇÔ¼ö¸¦ ±¸ºÐÇÏ´Â ±âÁØÀÌ ¾Æ´Ï´Ù.

 

int Add(int a, int b);

int Add(int c, int d);

 

ÀÌ µÎ ÇÔ¼ö´Â È£ÃâºÎ¿¡¼­ º¼ ¶§ Á¤¼öÇü 2°³¶ó´Â Á¡¿¡¼­ °°Àº ÇÔ¼öÀÌ´Ù. Add(1, 2) È£Ãâ¿¡ ´ëÇØ ¾î¶² ÇÔ¼ö¸¦ È£ÃâÇÒÁö °áÁ¤ÇÒ ¼ö ¾ø´Ù.

¡á ÀμöÀÇ ³í¸®Àû Àǹ̰¡ ´Ù¸¥ °æ¿ìµµ °á±¹ Çü½Ä ÀμöÀÇ À̸§¸¸ ´Ù¸¥ °æ¿ì¿Í °°¾Æ ¿ª½Ã ±¸ºÐÇÒ ¼ö ¾ø´Ù. ÇлýÀ» Çаú¿Í Ãâ¼® ¹øÈ£, À̸§°ú ÇйøÀ¸·Î °¢°¢ °Ë»öÇÑ´Ù°í ÇØ º¸ÀÚ.

 

int FindStudent(char *depart, int depnum);

int FindStudent(char *name, int stnum);

 

ÀμöÀÇ Àǹ̰¡ ¿ÏÀüÈ÷ ´Ù¸£Áö¸¸ »ç¶÷ÀÌ º¸±â¿¡¸¸ ±×·± °ÍÀÌ°í ÄÄÆÄÀÏ·¯°¡ º¸±â¿¡´Â ´Ù ¹®ÀÚ¿­ Çϳª, Á¤¼ö ÇϳªÀÏ »ÓÀ̶ó ¶È°°Àº ÇÔ¼öÀÌ´Ù. Á¤ µÎ ÇÔ¼ö¸¦ ¿À¹ö·Îµù½ÃÅ°°í ½Í´Ù¸é ÇÑÂÊ ÇÔ¼öÀÇ Àμö ¼ø¼­¸¦ ¹Ù²Ù¾î ±¸ºÐ °¡´ÉÇÏ°Ô ¸¸µé ¼ö´Â ÀÖ´Ù. µÚÂÊ ÇÔ¼ö¸¦ ´ÙÀ½°ú °°ÀÌ ¹Ù²Ù¸é ¿À¹ö·Îµù °¡´ÉÇÏ´Ù.

 

int FindStudent(int stnum, char *name);

 

ÇйøÀ» ¾Õ¿¡ µÎ°í ¹®ÀÚ¿­À» µÚ·Î ¿Å±â¸é µÎ ÇÔ¼ö¸¦ ±¸ºÐÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀμöÀÇ ¼ø¼­°¡ Çò°¥¸®°í ³í¸®ÀûÀ¸·Îµµ ¹Ù¶÷Á÷ÇÏÁö ¾Ê¾Æ ¾Æ¿¹ ´Ù¸¥ À̸§À¸·Î ÇÔ¼ö¸¦ µû·Î ¸¸µå´Â °ÍÀÌ ÁÁ´Ù.

¡á ¸®ÅÏ Å¸ÀÔ¸¸ ´Ù¸¥ °æ¿ìµµ ¿À¹ö·ÎµùÀÇ ´ë»óÀÌ ¾Æ´Ï´Ù. ¸®ÅÏ°ªÀº ÇÔ¼ö È£Ãâ´Ü°è¿¡¼­ Âü°íÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó È£Ãâ ÈÄ¿¡ Àû¿ëÇÏ´Â °ÍÀ̱⠶§¹®¿¡ ¾î¶² ÇÔ¼ö¸¦ È£ÃâÇÒÁö °áÁ¤ÇÒ ¼ö ¾ø´Ù.

 

int func(int a, double b);

double func(int a, double b);

 

¡á ·¹ÆÛ·±½º¿Í ÀÏ¹Ý º¯¼öµµ È£ÃâºÎÀÇ ¸ð¾çÀÌ °°¾Æ Áߺ¹ Á¤ÀÇÇÒ ¼ö ¾ø´Ù. µÑ ´Ù È£ÃâÇÒ ¶§´Â Add(a, b)½ÄÀ̶ó ¾î¶² ÇÔ¼ö¸¦ È£ÃâÇÒÁö ¸ðÈ£ÇÏ´Ù.

 

int Add(int a, int b);

int Add(int &a, int &b)

 

¡á µðÆúÆ® Àμö¿¡ ÀÇÇØ °°¾ÆÁú ¼ö ÀÖ´Â °æ¿ìµµ ¸ðÈ£ÇÏ´Ù. ´ÙÀ½ µÎ ÇÔ¼ö´Â ÀμöÀÇ °³¼ö°¡ ´Ù¸£Áö¸¸ c¸¦ »ý·«ÇÒ ¼ö ÀÖ¾î Add(1, 2)°¡ Add(1, 2)¸¦ ÀǹÌÇÏ´ÂÁö Add(1, 2, 0)À» ÀǹÌÇÏ´ÂÁö ¾Ö¸ÅÇÏ´Ù.

 

int Add(int a, int b);

int Add(int a, int b, int c = 0);

 

¡á »ç¿ëÀÚ Á¤ÀÇÇü¿¡ ÀÇÇØ °á±¹ °°Àº ŸÀÔÀÎ °æ¿ìµµ ¿À¹ö·ÎµùÇÒ ¼ö ¾ø´Ù.

 

typedef int *PINT;

void sub(int *p);

void sub(PINT p);

 

PINT°¡ °ð int * ŸÀÔÀ̹ǷΠµÎ sub ÇÔ¼ö´Â ÀμöÀÇ Å¸ÀÔÀÌ °°´Ù. ¸¶Âù°¡Áö·Î int *p¸¦ ¹Þ´Â ŸÀÔ°ú int p[]À» ¹Þ´Â ŸÀÔµµ µÑ ´Ù Àμö°¡ Æ÷ÀÎÅÍ¿©¼­ ¿À¹ö·ÎµùÇÒ ¼ö ¾ø´Ù.

 

±ÔÄ¢ÀÌ ±²ÀåÈ÷ ¸¹Àº °Í °°Áö¸¸ ¸ðµÎ ÀμöÀÇ °³¼ö¿Í ŸÀÔÀÌ °°Àº °æ¿ìÀÌ´Ù. Âü°í·Î const ÁöÁ¤ÀÚ´Â ¿À¹ö·ÎµùÀÇ ´ë»óÀ̾ ´ÙÀ½ µÎ ÇÔ¼ö´Â ¿À¹ö·Îµù °¡´ÉÇÏ´Ù.

 

int strlength(char *s);

int strlength(const char *s);

 

´ë»óü°¡ »ó¼öÀΰ¡ ¾Æ´Ñ°¡´Â È£Ãâ ½ÃÁ¡¿¡ ºÐ¸íÈ÷ ÆÇ´ÜÇÒ ¼ö ÀÖ¾î ¾Ö¸ÅÇÏÁö ¾Ê´Ù. ´Ü, Æ÷ÀÎÅÍ°¡ »ó¼öÀΰ¡ ¾Æ´Ñ°¡´Â Áß¿äÄ¡ ¾Ê¾Æ ¿À¹ö·Îµù ´ë»óÀÌ ¾Æ´Ï´Ù.

 

int strlength(char * const s);

 

ÀÌ °æ¿ì´Â ³»ºÎ¿¡¼­ Æ÷ÀÎÅ͸¦ º¯°æÇÒ ¼ö ÀÖ´À³Ä ¾ø´À³ÄÀÇ Â÷À̸¸ Àִµ¥ È£Ãâ ½ÃÁ¡¿¡¼­ ÇÔ¼ö ³»ºÎÀÇ µ¿ÀÛ±îÁö »ìÆ캼 ¼ö´Â ¾ø´Ù. ±×·¡¼­ ÀÌ ÇÔ¼ö´Â char *¸¦ ÃëÇÏ´Â ÇÔ¼ö¿Í °°Àº À̸§À» ¾µ ¼ö ¾ø´Ù. ¾îÂ÷ÇÇ Æ÷ÀÎÅÍ s´Â Áö¿ª º¯¼öÀÏ »ÓÀ̾ ÇÔ¼ö°¡ Æ÷ÀÎÅ͸¦ ¹Ù²Ù³ª ¸¶³ª ½ÇÀμö´Â ¿µÇâÀ» ¹ÞÁö ¾Ê¾Æ ºñ»ó¼ö Æ÷ÀÎÅ͸¦ ¹ÞÀ» ¼ö ÀÖ´Ù.

ÇÔ¼ö ¿À¹ö·ÎµùÀº µ¿ÀÏÇÑ µ¿ÀÛÀ» ÇÏ´Â ÇÔ¼ö¸¦ °°Àº À̸§À¸·Î Á¤ÀÇÇÔÀ¸·Î½á °³¹ßÀÚÀÇ ±â¾ï·ÂÀ» µµ¿ÍÁØ´Ù. °¡Àå ÀûÀýÇÑ »ç¿ë¿¹´Â ´ÙÀ½°ú °°´Ù.

 

void DrawRect(int x1,int y1,int x2,int y2);

void DrawRect(POINT lefttop, POINT rightbottom);

void DrawRect(RECT *bound);

 

»ç°¢ÇüÀ» ±×¸®´Â ÇÔ¼ö¸¦ ¼¼ °¡Áö ¹öÀüÀ¸·Î Á¤ÀÇÇß´Ù. Á»ó´Ü°ú ¿ì»ó´ÜÀÇ x, y ÁÂÇ¥¸¦ Á÷Á¢ ÁÙ ¼öµµ ÀÖ°í µÎ °³ÀÇ POINT ±¸Á¶Ã¼¸¦ Àü´ÞÇÒ ¼öµµ ÀÖ´Ù. ¶Ç´Â µÎ Á¡ÀÇ ÁÂÇ¥¸¦ °¡Áö´Â RECT ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ·Î Àü´ÞÇصµ µÈ´Ù. °³¹ßÀڴ ŸÀÔ¿¡ µû¶ó ÇÔ¼ö¸¦ ±¸ºÐÇÒ ÇÊ¿ä ¾øÀÌ ÀÚ½ÅÀÌ °¡Àå ±¸Çϱ⠽¬¿î Á¤º¸¸¦ Àμö·Î Àü´ÞÇÒ ¼ö ÀÖÀ¸¸ç »ç°¢ÇüÀ» ±×¸± ¶§´Â DrawRect ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù´Â °Í¸¸ ±â¾ïÇÏ¸é µÈ´Ù.

3.ÀζóÀÎ ÇÔ¼ö

ÇÔ¼ö´Â ¹Ýº¹µÈ µ¿ÀÛÀ» ÇϳªÀÇ Æ²·Î Á¤ÀÇÇØ µÎ°í ÇÊ¿äÇÒ ¶§¸¶´Ù È£ÃâÇØ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. ´ÙÀ½ ¿¹Á¦ÀÇ randfunc ÇÔ¼ö´Â Àμö·Î Àü´ÞµÈ nº¸´Ù ÀÛÀº ³­¼ö Çϳª¸¦ »ý¼ºÇÏ¿© µ¹·ÁÁØ´Ù.

 

randfunc

#include <stdio.h>

#include <stdlib.h>

 

int randfunc(int n)

{

     return rand() % n;

}

 

int main()

{

     int i, j, k;

 

     i = randfunc(10);

     j = randfunc(100);

     k = randfunc(50);

     printf("³­¼ö = %d,%d,%d\n", i, j, k);

}

½ÇÇà°á°ú

³­¼ö = 1,67,34

 

¹Ýº¹À» Á¦°ÅÇÑ´Ù´Â ¸é¿¡¼­ ±¸Á¶ÀûÀÌ¸ç »ç¿ëÇϱ⵵ Æí¸®ÇÏ´Ù. ±×·¯³ª ³»ºÎÀûÀÎ µ¿ÀÛÀ» »ìÆ캸¸é ¾à°£ÀÇ ºñÈ¿À²ÀÌ ÀÖ´Ù.

ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§¸¶´Ù ºÐ±â°¡ ÀϾ¸ç ÀÌ °úÁ¤¿¡¼­ ³»ºÎÀûÀ¸·Î ½ºÅà ÇÁ·¹ÀÓÀÌ »ý¼ºµÇ°í ÇØÁ¦µÇ´Â º¹ÀâÇÑ °úÁ¤À» °ÅÄ£´Ù. È£Ãâ °úÁ¤¿¡¼­ ºñ¿ëÀÌ ¹ß»ýÇÏ´Â ¼ÀÀÌ´Ù. ÇÔ¼ö°¡ °Å´ëÇÏ°í ¸¹Àº ÀÏÀ» ÇÑ´Ù¸é ÀÌ ºñ¿ëÀÌ ´ú ºÎ´ã½º·´Áö¸¸ ³­¼ö Çϳª¸¦ »ý¼ºÇÏ´Â °£´ÜÇÑ ÀÛ¾÷À» Çϴµ¥ ³Ê¹« ¿À·£ ½Ã°£ÀÌ °É¸°´Ù.

ÀÌ·² ¶§´Â ÇÔ¼ö·Î ºÐ±âÇÏÁö ¸»°í È£Ã⠺ο¡ ÇØ´ç Äڵ带 Á÷Á¢ »ðÀÔÇÏ´Â °ÍÀÌ ´õ ºü¸£´Ù. ÀÌ·± ½ÄÀ¸·Î µ¿ÀÛÇÏ´Â ÇÔ¼ö¸¦ ÀζóÀÎ(inline) ÇÔ¼ö¶ó°í ÇÑ´Ù. ºÐ±âÇÏÁö ¾Ê°í ÇÔ¼ö º»Ã¼ÀÇ Äڵ带 ¹Ù·Î »õ°Ü ³Ö¾î ¹ö¸²À¸·Î½á È£ÃâÀÇ ºÎ´ãÀ» Á¦°ÅÇÏ´Â ±â¹ýÀÌ´Ù. ÇÔ¼ö¸¦ ÀζóÀÎÀ¸·Î ¸¸µé·Á¸é ÇÔ¼ö ¼±¾ð¹® ¾Õ¿¡ inline Å°¿öµå¸¦ ºÙÀδÙ.

 

inline int randfunc(int n)

{

     return rand() % n;

}

 

ÀζóÀÎÀ¸·Î ÁöÁ¤µÈ ÇÔ¼ö´Â È£Ãâ¹®¿¡ ÇÔ¼ö º»Ã¼¸¦ »ðÀÔÇÑ´Ù. randfunc(10) È£Ãâ¹®ÀÌ rand() % 10 ÄÚµå·Î ´ëüµÇ¾î ¹ö¸°´Ù. ÇÔ¼ö ½ÇÇà ¹æ¹ýÀÌ ¹Ù²î¾úÀ» »Ó Äڵ尡 ¹Ù²ï °ÍÀº ¾Æ´Ï¹Ç·Î °á°ú´Â °°´Ù.

ÇÔ¼ö·Î ºÐ±âÇÏÁö ¾Ê¾Æ ½ÇÇà¼Óµµ´Â »¡¶óÁöÁö¸¸ º»Ã¼°¡ ¸Å¹ø »ðÀÔµÇ¾î ½ÇÇà ÆÄÀÏÀº ´õ Ä¿Áø´Ù. Áï ÀζóÀÎÀº ¼Óµµ¿¡ À¯¸®ÇÏ°í Å©±â¿¡ ºÒ¸®ÇÑ ¹æ¹ýÀÌ´Ù. º»Ã¼°¡ ª°í ¼Óµµ°¡ Áß¿äÇÑ ÇÔ¼ö¸¦ ÀζóÀÎÀ¸·Î ¼±¾ðÇϸé À¯¸®ÇÏ´Ù. ¹Ý¸é Å« ÇÔ¼ö´Â È£Ã⠽ð£ÀÌ ½ÇÇà ½Ã°£¿¡ ºñÇØ »ó´ëÀûÀ¸·Î ª±â ¶§¹®¿¡ ÀζóÀÎÀ¸·Î ¸¸µé¾îµµ º° À̵æÀÌ ¾øÀ¸¸ç ½ÇÇà ÆÄÀϸ¸ ºñ´ëÇØÁ® ºÒ¸®ÇÏ´Ù.

°³¹ßÀÚ´Â ÀζóÀÎÀ¸·Î ¸¸µé°í ½ÍÀº ÇÔ¼ö ¾Õ¿¡ inline Å°¿öµå¸¦ ºÙ¿© Àǻ縦 ¹àÈú »ÓÀ̸ç ÀÌ ÇÔ¼ö°¡ ½ÇÁ¦ ÀζóÀÎÀÌ µÉ °ÍÀΰ¡ ¾Æ´Ñ°¡´Â ÄÄÆÄÀÏ·¯°¡ °áÁ¤ÇÑ´Ù. ¾Æ¹«¸® °³¹ßÀÚÀÇ ÁöÁ¤ÀÌ ÀÖ´õ¶óµµ ´ÙÀ½ÀÇ °æ¿ì¿¡´Â ÀζóÀÎÀÌ µÉ ¼ö ¾ø´Ù.

 

¡á Àç±Í È£Ãâ ÇÔ¼ö´Â ½ºÅÃÀ» ±â¹ÝÀ¸·Î ÇϹǷΠ½ÇÁ¦ È£ÃâÀÌ ÀϾ¾ß Á¤»ó µ¿ÀÛÇÑ´Ù. ÀÌ °æ¿ì´Â ÀζóÀÎ ÁöÁ¤À» ¹«½ÃÇÏ°í ÀÏ¹Ý ÇÔ¼ö·Î ÄÄÆÄÀÏÇÑ´Ù. Àç±Í È£Ãâ ÇÔ¼ö°¡ ÀζóÀÎÀÌ µÇ¸é Å©±â°¡ ¹«ÇÑ´ë´Ù.

¡á ÇÔ¼ö Æ÷ÀÎÅÍ·Î °¡¸®Å°´Â ÇÔ¼ö´Â ÀζóÀÎÀÌ µÉ ¼ö ¾ø´Ù. ½ÇÁ¦ º»Ã¼¸¦ °¡Á®¾ß ¹øÁö°¡ ÇÒ´çµÇ´Âµ¥ ÀζóÀÎÀº ¹øÁö¸¦ °¡ÁöÁö ¾Ê´Â´Ù.

¡á ÇÔ¼ö°¡ ³Ê¹« ±æ¸é µæº¸´Ù ½ÇÀÌ ¸¹¾Æ ÀÏ¹Ý ÇÔ¼ö·Î ÄÄÆÄÀÏÇÑ´Ù.

 

¹Ý¸é, ÀζóÀÎ ÁöÁ¤À» ÇÏÁö ¾Ê¾Æµµ ÀÚµ¿À¸·Î ÀζóÀÎÀÌ µÇ´Â °æ¿ìµµ ÀÖ´Ù. Ŭ·¡½º ¼±¾ð¹®¿¡ ÀÛ¼ºµÈ ÇÔ¼ö´Â Ç×»ó ÀζóÀÎÀÌ µÈ´Ù. ÀζóÀÎ ÇÔ¼ö¿Í ÀÏ¹Ý ÇÔ¼ö´Â È£Ãâ ¼Óµµ¿Í Å©±âÀÇ Â÷À̸¸ ÀÖÀ» »Ó µ¿ÀÛ ÀÚü¿¡ º¯È­´Â ¾ø¾î ÄÄÆÄÀÏ·¯°¡ Àç·®²¯ ÀζóÀÎ ¿©ºÎ¸¦ °áÁ¤ÇÑ´Ù.

ÀζóÀÎ ÇÔ¼ö´Â ±× ÀÚ¸®¿¡ Äڵ尡 »ðÀԵȴٴ ¸é¿¡¼­ ¸ÅÅ©·Î ÇÔ¼ö¿Í À¯»çÇÏ´Ù. ½ÇÁ¦·Î randfunc ÇÔ¼ö¿Í ¶È°°ÀÌ µ¿ÀÛÇÏ´Â ¸ÅÅ©·Î ÇÔ¼ö¸¦ ¸¸µé ¼ö ÀÖÀ¸¸ç ÀÌ Ã¥¿¡¼­ ½Ç½À¿ëÀ¸·Î »ç¿ëÇÏ´Â cursor.h Çì´õÆÄÀÏ¿¡µµ ÀÛ¼ºµÇ¾î ÀÖ´Ù.

 

#define random(n) (rand()%(n))

 

¸ÅÅ©·Î ÇÔ¼öµµ Å©±â¿¡ ºÒ¸®ÇÏ°í ¼Óµµ¿¡ À¯¸®Çϴٴ Ư¼ºÀÌ °°¾Æ ÀÌ µÑÀº ¼­·Î ´ëü °¡´ÉÇÑ °ü°èÀÌ´Ù. ±×·¯³ª ÀζóÀÎ ÇÔ¼ö´Â ±â°èÀûÀ¸·Î µ¿ÀÛÇÏ´Â ¸ÅÅ©·Î ÇÔ¼ö¿¡ ºñÇØ ´ÙÀ½°ú °°Àº ÀÌÁ¡ÀÌ ÀÖ´Ù.

 

¡á ŸÀÔÀ» ÀνÄÇϹǷΠ¹Î°¨ÇÑ Å¸ÀÔ ¹®Á¦°¡ ¾ø°í »ê¼ú º¯È¯µµ Àß Ã³¸®µÈ´Ù.

¡á ¾î·µç ÇÔ¼öÀÇ ÇüŸ¦ ¶ì¹Ç·Î Áö¿ª º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

¡á ¸ÅÅ©·Î´Â °ýÈ£¸¦ Àß ½ÎÁö ¾ÊÀ¸¸é ºÎÀÛ¿ëÀÌ ÀÖÁö¸¸ ÀζóÀÎ ÇÔ¼ö´Â ÄÄÆÄÀÏ·¯°¡ ó¸®ÇϹǷΠ¾ÈÀüÇÏ´Ù.

 

¹«½ÄÇÏ°Ô µ¿ÀÛÇÏ´Â ¸ÅÅ©·Î ÇÔ¼ö¿¡ ºñÇØ ÄÄÆÄÀÏ·¯°¡ ó¸®ÇÏ´Â ÀζóÀÎ ÇÔ¼ö°¡ ÇÑ ¼ö À§ÀÌ¸ç ±×·¡¼­ C++Àº ¸ÅÅ©·Î ÇÔ¼öº¸´Ù ÀζóÀÎ ÇÔ¼ö¸¦ ±ÇÀåÇÑ´Ù. ±×·¯³ª ¸ÅÅ©·Î ÇÔ¼öµµ ³ª¸§ÀÇ ÀÌÁ¡ÀÌ ÀÖ¾î ±âÁ¸ÀÇ Àß µ¿ÀÛÇÏ´ø °Í±îÁö ÀζóÀÎÀ¸·Î ¸¸µé ÇÊ¿ä´Â ¾ø´Ù. ´ÙÀ½ ÇÔ¼ö´Â ÀζóÀÎÀ¸·Î ¸¸µé ¼ö ¾ø´Ù.

 

#define ARSIZE(ar) (sizeof(ar)/sizeof(ar[0]))

 

¹è¿­ÀÇ Å©±â¸¦ °è»êÇÏ´Â ¸ÅÅ©·ÎÀε¥ ¹è¿­ ÀÚü¸¦ ÇÔ¼ö·Î ³Ñ±æ ¹æ¹ýÀÌ ¾ø±â ¶§¹®¿¡ ÀζóÀÎÀ¸·Î´Â ÀÌ µ¿ÀÛÀ» ±¸ÇöÇÒ ¼ö ¾ø´Ù. ÀÌ °æ¿ì´Â ¸ÅÅ©·Î°°Àº ´Ü¼ø ¹«½ÄÇÑ ¹æ¹ýÀÌ ´õ À¯¿ëÇÏ´Ù.

 

¼¿ÇÁ Å×½ºÆ®

1-1

#include <stdio.h>

 

int main()

{

     double *ar;

 

     ar = new double[100];

     ar[50] = 3.14;

     printf("%f\n", ar[50]);

     delete[] ar;

}

 

1-2

#include <iostream>

using namespace std;

 

int main()

{

     int left, right;

     cout << "Áº¯À» ÀÔ·ÂÇϽÿÀ : ";

     cin >> left;

     cout << "¿ìº¯À» ÀÔ·ÂÇϽÿÀ : ";

     cin >> right;

     cout << "µÎ Á¤¼öÀÇ ÇÕÀº " << left + right << "ÀÔ´Ï´Ù." << endl;

}

 

1-3

#include <iostream>

using namespace std;

 

void getposition(int &x, int &y)

{

     cout << "x ÁÂÇ¥¸¦ ÀÔ·ÂÇϽÿÀ : ";

     cin >> x;

     cout << "y ÁÂÇ¥¸¦ ÀÔ·ÂÇϽÿÀ : ";

     cin >> y;

 

}

 

int main()

{

     int x, y;

     getposition(x, y);

     cout << "ÀÔ·ÂÇÑ ÁÂÇ¥´Â (" << x << ", " << y << ")ÀÔ´Ï´Ù." << endl;

}

 

È£Ãâ¿ø¿¡¼­´Â º¯¼ö¸¦ ¸ÕÀú ¼±¾ðÇÏ°í ÀÌ º¯¼ö¿¡ ´ëÇÑ ·¹ÆÛ·±½º¸¦ Àμö·Î Àü´ÞÇÑ´Ù. ·¹ÆÛ·±½º Àμö¸¦ ÅëÇØ °ªÀ» ¸®ÅÏÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¿©·¯ °³ÀÇ °ªÀ» ä¿öÁÙ ¼ö ÀÖ´Ù.

¿¬½À ¹®Á¦

1. C++¿¡¼­ È®ÀåµÈ ¹®¹ýÀÌ ¾Æ´Ñ °ÍÀº?

¨ç ÇÑÁÙ ÁÖ¼®À» ´Þ ¶§´Â // ±âÈ£¸¦ »ç¿ëÇÑ´Ù.

¨è ÇÔ¼ö Áß°£¿¡µµ º¯¼ö¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù.

¨é { } ºí·ÏÀÇ ¼±µÎ¿¡ º¯¼ö¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù.

¨ê for¹®ÀÇ Ãʱâ½Ä¿¡ Á¦¾î º¯¼ö¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù.

 

2.´ÙÀ½ Áß °´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹ÖÀÇ Æ¯Â¡ÀÌ ¾Æ´Ñ °ÍÀº

¨ç ¼¶¼¼ÇÑ Á¦¾î  ¨è ĸ½¶È­  ¨é ´ÙÇü¼º  ¨ê »ó¼Ó

 

3.°´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ ¼³¸í Áß Æ²¸° °ÍÀº

¨ç ºÎÇ°À» ¸ÕÀú ¸¸µé°í Á¶¸³ÇÏ´Â Bottom Up ¹æ½ÄÀÌ´Ù.

¨è C++ ¾ð¾îÀÇ °íÀ¯ÇÑ ±â´ÉÀÌ´Ù.

¨é ¹®Á¦¸¦ Ǫ´Â »ç°í ¹æ½ÄÀÌ´Ù.

¨ê ¼ÒÇÁÆ®¿þ¾î À§±â¸¦ ÇØ°áÇϱâ À§ÇØ ´ëµÎµÇ¾ú´Ù.

 

4. new ¿¬»êÀÚ¿¡ ´ëÇÑ ¼³¸íÀ¸·Î À߸øµÈ °ÍÀº?

¨ç º°µµÀÇ Çì´õ ÆÄÀÏÀ» Æ÷ÇÔÇÒ ÇÊ¿ä°¡ ¾ø´Ù.

¨è ÀÓÀÇ Å¸ÀÔ¿¡ ´ëÇØ ¸Þ¸ð¸®¸¦ ÇÒ´çÇÒ ¼ö ÀÖ´Ù.

¨é ÇÒ´ç°ú µ¿½Ã¿¡ Ãʱ갪À» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

¨ê ÇÒ´çÇÑ ¸Þ¸ð¸®ÀÇ Å©±â¸¦ ¹Ù²Ù¾î ÀçÇÒ´çÇÒ ¼ö ÀÖ´Ù.

 

5. ·¹ÆÛ·±½º¿¡ ´ëÇÑ ¼³¸íÀ» ¿ÇÁö ¾ÊÀº °ÍÀº?

¨ç ½ÇÇàÁß¿¡ ´ë»óü¸¦ ¹Ù²Ü ¶§´Â = ¿¬»êÀÚ¸¦ »ç¿ëÇÑ´Ù.

¨è Áº¯°ª¸¸ °¡¸®Å³ ¼ö ÀÖ´Ù.

¨é ´ë»óü¿Í ŸÀÔÀÌ ¿ÏÀüÈ÷ ÀÏÄ¡ÇØ¾ß ÇÑ´Ù.

¨ê ´ë»óü¿¡ Àû¿ëµÇ´Â ¸ðµç ¿¬»êÀ» ´Ù ÇÒ ¼ö ÀÖ´Ù.

 

6.´ÙÀ½ Áß ¼±¾ð °¡´ÉÇÑ Çü½ÄÀº ¹«¾ùÀΰ¡?

¨ç ·¹ÆÛ·±½º¿¡ ´ëÇÑ ·¹ÆÛ·±½º

¨è Æ÷ÀÎÅÍ¿¡ ´ëÇÑ ·¹ÆÛ·±½º

¨é ·¹ÆÛ·±½º¿¡ ´ëÇÑ Æ÷ÀÎÅÍ

¨ê ·¹ÆÛ·±½º ¹è¿­

 

7.·¹ÆÛ·±½ºÀÇ ³»ºÎ ±¸Á¶¿¡ ´ëÇÑ ¼³¸íÀ¸·Î Ʋ¸° °ÍÀº?

¨ç Æ÷ÀÎÅÍÀÇ º¯ÇüÀÌ¸ç ·¹ÆÛ·±½º´Â ³»ºÎÀûÀ¸·Î Æ÷ÀÎÅÍ·Î ¼±¾ðµÈ´Ù.

¨è ·¹ÆÛ·±½º¸¦ ÂüÁ¶ÇÏ´Â ¸ðµç ¹®Àå¿¡ ¾Ï½ÃÀûÀ¸·Î * ¿¬»êÀÚ°¡ Àû¿ëµÈ´Ù.

¨é ·¹ÆÛ·±½ºÀÇ ´ë»óü¿¡ ´ëÇØ ¾Ï½ÃÀûÀ¸·Î &¿¬»êÀÚ°¡ Àû¿ëµÈ´Ù.

¨ê Æ÷ÀÎÅÍ°¡ °¡¸®Å³ ¼ö ÀÖ´Â ¸ðµç º¯¼ö, »ó¼ö¿¡ ´ëÇÑ ·¹ÆÛ·±½º¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù.

 

8.µðÆúÆ® Àμö¸¦ ¼±¾ð ¹× »ç¿ëÇÏ´Â ±ÔÄ¢À¸·Î ¿ÇÁö ¾ÊÀº °ÍÀº?

¨ç ¿À¸¥ÂʺÎÅÍ ¼ø¼­´ë·Î µðÆúÆ® Àμö¸¦ ÁöÁ¤ÇÑ´Ù.

¨è È£ÃâÇÒ ¶§µµ ¿À¸¥ÂʺÎÅÍ ¼ø¼­´ë·Î »ý·«ÇÒ ¼ö ÀÖ´Ù.

¨é ¼±¾ðºÎ¿Í Á¤ÀǺο¡ ¸ðµÎ µðÆúÆ®°ªÀ» ¹àÇô¾ß ÇÑ´Ù.

¨ê °¡¿îµ¥ Àμö¸¦ »ý·«ÇÏ°í ½Í´Ù¸é ¼ø¼­¸¦ ¹Ù²Ù¾î¾ß ÇÑ´Ù.

 

9.´ÙÀ½Áß °°Àº À̸§ÀÇ ÇÔ¼ö¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ´Â °æ¿ì´Â?

¨ç Çü½Ä ÀμöÀÇ À̸§ÀÌ ´Ù¸¥ °æ¿ì

¨è Çü½Ä ÀμöÀÇ ³í¸®Àû Àǹ̰¡ ´Ù¸¥ °æ¿ì

¨é Çü½Ä ÀμöÀÇ °³¼ö°¡ ´Ù¸¥ °æ¿ì

¨ê ¸®ÅÏ Å¸ÀÔÀÌ ´Ù¸¥ °æ¿ì

 

10.´ÙÀ½ µÎ ÇÔ¼ö´Â ¿À¹ö·ÎµùÇÒ ¼ö ¾ø´Ù. ÀÌÀ¯´Â ¹«¾ùÀΰ¡?

 

int increase(int value);

void increase(int &value);

 

11. ´ÙÀ½ Áß ÀζóÀÎ ÇÔ¼ö·Î ÀûÇÕÇÑ °ÍÀº?

¨ç º»Ã¼°¡ ª°í ÀÚÁÖ È£ÃâµÇ´Â ÇÔ¼ö

¨è Àç±Í È£Ãâ ÇÔ¼ö

¨é ÇÔ¼ö Æ÷ÀÎÅÍ·Î °£Á¢ È£ÃâÇÏ´Â ÇÔ¼ö

¨ê ¼ö½ÊÁÙÀÌ ³Ñ´Â °Å´ëÇÑ ÇÔ¼ö