1-2.C/C++¾ð¾î ¼Ò°³

1-2-°¡.C/C++ÀÇ ¿ª»ç

C¾ð¾î´Â 1972³â º§ ¿¬±¸¼ÒÀÇ µ¥´Ï½º ¸®Ä¡(Dennis Ritchie)¿¡ ÀÇÇØ ¸¸µé¾îÁ³´Ù. µ¥´Ï½º ¸®Ä¡´Â UNIX ¿î¿µÃ¼Á¦ÀÇ °³¹ßÀ» ¸Ã°í ÀÖ¾ú´Âµ¥ ¿î¿µÃ¼Á¦´Â ±× Ư¼º»ó Çϵå¿þ¾î¸¦ Á÷Á¢ Á¦¾îÇÒ ¼ö ÀÖ¾î¾ß Çß´Ù. ¶ÇÇÑ ´ç½ÃÀÇ ÄÄÇ»ÅÍ È¯°æÀÌ Áö±Ý°ú´Â ´Þ¶ó CPUÀÇ ¼Óµµ³ª ¸Þ¸ð¸®ÀÇ ¿ë·®ÀÌ ÃæºÐÇÏÁö ¾Ê¾Ò±â ¶§¹®¿¡ ÇÁ·Î±×·¥ÀÇ Å©±â´Â ÀÛ¾Æ¾ß Çß°í ¼Óµµ´Â »¡¶ó¾ßÇß´Ù.

ÀÌ·± ¸ðµç ¿ä±¸¸¦ ¸¸Á·½Ãų ¼ö ÀÖ´Â À¯ÀÏÇÑ ¾ð¾î´Â ¾î¼Àºí¸®¹Û¿¡ ¾ø¾ú´Ù. ±×·¯³ª ¾î¼Àºí¸®´Â ƯÁ¤ ±â°è¿¡ Á¾¼ÓÀûÀ̸ç À̽ļºÀÌ ¾ø±â ¶§¹®¿¡ ¿©·¯ Ç÷§Æû¿¡ ¼öÁ¤¾øÀÌ »ç¿ëÇÏ´Â °ÍÀÌ ¸ñÀûÀÎ UNIX¿Í´Â Àß ¾î¿ï¸®Áö ¾Ê¾Ò´Ù. C¾ð¾îº¸´Ù ¸ÕÀú ¹ßÇ¥µÈ Æ÷Æ®¶õÀ̳ª º£ÀÌÁ÷°°Àº °í±Þ¾ð¾îµéÀº È¿À²ÀÌ ÁÁÁö ¸øÇØ ´ëÇü ÇÁ·ÎÁ§Æ®¿¡ ¾²±â¿¡´Â ¿ª½Ã ºÎÀûÇÕÇß´Ù.

±×·¡¼­ µ¥´Ï½º ¸®Ä¡´Â ±âÁ¸ÀÇ ¾ð¾î¸¦ »ç¿ëÇÏÁö ¾Ê°í ¾î¼Àºí¸®ÀÇ °­·ÂÇÑ ±â´É°ú °í±Þ¾ð¾îÀÇ À̽ļºÀ» µ¿½Ã¿¡ °®Ãá »õ·Î¿î ¾ð¾î¸¦ Á÷Á¢ ¸¸µé¾ú´Ù. ¹°·Ð µ¥´Ï½º ¸®Ä¡°¡ È¥ÀÚ¼­ C¾ð¾î¸¦ ´Ù ¸¸µç °ÍÀº ¾Æ´Ï¸ç °ú°Å ¾ð¾îµéÀÇ ÀåÁ¡À» ÃëÇÕ Á¤¸®Çؼ­ ¸¸µç °ÍÀÌ´Ù. C¾ð¾îÀÇ »Ñ¸®´Â ÃÖÃÊÀÇ ±¸Á¶Àû ¾ð¾îÀÎ ALGOLÀÌ¸ç µ¥´Ï½º ¸®Ä¡´Â µ¿·áÀÎ ÄË Åè½¼(Ken Thompson)ÀÌ ¸¸µç B¾ð¾î¸¦ °³·®ÇÏ¿© C¾ð¾î¸¦ ¸¸µé¾ú´Ù. C¾ð¾îÀÇ °èº¸¸¦ ±×·Á º¸¸é ´ÙÀ½°ú °°´Ù.

ÀÌ ¾ð¾î¿¡ C¶ó´Â À̸§À» ºÙÀÎ ÀÌÀ¯´Â ´Ü¼øÈ÷ Bº¸´Ù ÇÑ´Ü°è ´õ ¹ßÀüÇß´Ù´Â Àǹ̷ΠB ´ÙÀ½ÀÇ ¾ËÆĺªÀÎ C¸¦ »ç¿ëÇÑ °ÍÀÌ´Ù. ±×·¡¼­ ȤÀÚ´Â C¾ð¾î ´ÙÀ½Àº D¾ð¾î°¡ ³ª¿Ã °ÍÀÌ´Ù¶ó°í ¾ê±âÇϱ⵵ Çϴµ¥ ÀÌ·± ¿¹»ó°ú´Â ´Þ¸® C¾ð¾îÀÇ ´ÙÀ½Àº C++ÀÌ µÇ¾ú´Ù. C¾ð¾î´Â °£°áÇϸ鼭µµ °­·ÂÇÑ ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱ⿡ ÀûÇÕÇÏ¿© ¿À´Ã³¯ °¡Àå ´ëÁßÀûÀÎ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î »ç¿ëµÇ°í ÀÖ´Ù.

C¾ð¾î°¡ ¹ßÇ¥µÇ±â ÀüÀÇ ¾ð¾îµéÀº °¢°¢ Àå´ÜÁ¡ÀÌ À־ ƯÁ¤ ºÐ¾ß¿¡¼­ µ¶Á¡ÀûÀÎ ÁöÀ§¸¦ °¡Áö´Â °íÀ¯ÀÇ ¿µ¿ªÀ» È®º¸ÇÏ°í ÀÖ¾ú´Ù. ¿¹¸¦ µé¾î ÆĽºÄ®À̳ª º£ÀÌÁ÷Àº ±³À°¿ë ¾ð¾î·Î ºÐ·ùµÇ¾ú°í ÄÚº¼Àº »ó¾÷¿ë ¼ÒÇÁÆ®¿þ¾î ÀÛ¼º¿¡ È¿À²ÀûÀ̾úÀ¸¸ç Æ÷Æ®¶õÀº °úÇÐ ±â¼ú¿ë ¾ð¾î·Î ÁÖ·Î »ç¿ëµÇ¾ú´Ù. ¶ÇÇÑ ¸®½ºÇÁ´Â Àΰø Áö´É ±¸Çö¿¡ ÀûÇÕÇßÀ¸¸ç ¾î¼Àºí¸®´Â ½Ã½ºÅÛ ÇÁ·Î±×·¡¹ÖÀ» À§ÇÑ ÃÖÀûÀÇ ¾ð¾î¿´´Ù. ±×·¯³ª ÀÌ·± ºÐ·ù´Â ¸ðµç ºÐ¾ß¿¡ °­Á¡À» º¸ÀÌ´Â ¹ü¿ëÀÇ C¾ð¾î°¡ µîÀåÇÔÀ¸·Î½á Àǹ̸¦ ÀÒ°Ô µÇ¾ú´Ù. C¾ð¾î°¡ ¸ðµç ºÐ¾ß¸¦ Á¦¾ÐÇØ ¹ö¸° °ÍÀÌ´Ù.

C¾ð¾î´Â ±× °­·ÂÇÔÀ¸·Î ÀÎÇØ 80³â´ë ÀÌÈÄ ¿©·¯ ºÐ¾ß¿¡ °ÉÃÄ ±¤¹üÀ§ÇÏ°Ô »ç¿ëµÇ±â ½ÃÀÛÇßÀ¸¸ç °¡Àå ÀαâÀÖ´Â ¾ð¾î°¡ µÇ¾ú´Ù. ±×·¯³ª µ¥´Ï½º ¸®Ä¡°¡ óÀ½ C¾ð¾î¸¦ µðÀÚÀÎÇÒ ¶§¿¡ ºñÇØ ÄÄÇ»ÅÍ È¯°æÀÌ ¸¹ÀÌ º¯ÇØ ºñÈ¿À²ÀûÀÎ ¸éµéÀÌ Á¡Á¡ µå·¯³ª±â ½ÃÀÛÇßÀ¸¸ç ¶ÇÇÑ ¾Ö¸ÅÇÑ ¹®¹ýµéÀÌ Á¸ÀçÇß¾ú´Ù.

°¢ ÄÄÆÄÀÏ·¯ °³¹ß»çµéÀº °æÀïÀûÀ¸·Î ¼ö¸¹Àº CÄÄÆÄÀÏ·¯¸¦ ¹ßÇ¥Çß´Ù. ÄÄÆÄÀÏ·¯´Â ÀÏÁ¾ÀÇ »óÇ°À̱⠶§¹®¿¡ Ÿ»ç Á¦Ç°°ú Â÷º°È­µÇ´Â ±â´ÉÀÌ ÀÖ¾î¾ß ÇÏ°í º¯È­µÈ ȯ°æ¿¡ ÀûÀÀÇÒ ¼ö ÀÖ´Â »õ·Î¿î ±â´ÉÀ» Ãß°¡ÇÒ ÇÊ¿äµµ ÀÖ´Ù. °¢ Á¦ÀÛ»çµéÀº ½ÃÀåÀÇ ¿ä±¸¿Í ÇÊ¿ä¿¡ µû¶ó Á¶±Ý¾¿ ¾ð¾îÀÇ ±â´ÉÀ» È®ÀåÇÔÀ¸·Î½á C¾ð¾î¿¡µµ ¸¹Àº º¯Á¾µéÀÌ »ý°Ü³ª°Ô µÇ¾ú´Ù. ÀÌ·¸°Ô µÇ¸é ÀÛ¼ºÇÑ ÄÄÆÄÀÏ·¯¿¡ µû¶ó ¼Ò½º Â÷¿øÀÇ È£È¯¼ºÀÌ ¾ø¾îÁö´Â ¹®Á¦Á¡ÀÌ ÀÖÀ¸¸ç ÀÌ´Â »çȸÀûÀ¸·Î Å« ³¶ºñ¸¦ ÃÊ·¡ÇÏ¿´´Ù.

º¯È­µÈ ȯ°æ¿¡ ÀûÀÀÇÏ°í °æÀïÀ¸·Î ÀÎÇØ ÈÑ¼ÕµÈ À̽ļºÀ» º¹±¸Çϱâ À§Çؼ­´Â Ç¥ÁØÀÇ Á¦Á¤ÀÌ Àý½ÇÈ÷ ÇÊ¿äÇØÁ³´Ù. ±×·¡¼­ ¹Ì Ç¥ÁØ À§¿øȸÀÎ ANSI´Â 83³âºÎÅÍ Ç¥ÁØ Á¦Á¤ ÀÛ¾÷¿¡ µé¾î°¡ 89³â¿¡ Ç¥ÁؾÈÀ» ¿Ï¼ºÇßÀ¸¸ç 90³â¿¡ ISO¿¡ ÀÇÇØ ½ÂÀÎ(ISO 9899)µÇ¾ú´Ù. À̶§ Á¦Á¤µÈ C Ç¥ÁØÀ» ANSI C(¶Ç´Â C90)¶ó°í ÇÏ¸ç ±× ÀÌÀüÀÇ C¸¦ Ŭ·¡½Ä C(K&R C)¶ó°í ÇÑ´Ù. ANSI C´Â Ŭ·¡½Ä C¿¡ ºñÇØ ¾ÈÀü¼ºÀ» ³ôÀÌ°í ¾Ö¸ÅÇÑ ±â´ÉÀ» Á¤¸®ÇÏ¿´À¸¸ç ´ÙÀ½°ú °°Àº ±â´ÉÀ» Ãß°¡Çß´Ù.

 

¨ç Ç¥ÁØ ¶óÀ̺귯¸® ÇÔ¼ö¸¦ ±Ô°ÝÈ­ÇßÀ¸¸ç Çì´õ ÆÄÀϵµ ÅëÀÏÇß´Ù.

¨è ÇÔ¼öÀÇ ¿øÇü ¼±¾ð ±â´ÉÀÌ Ãß°¡µÇ¾î ÄÄÆÄÀÏ·¯°¡ ÇÔ¼ö È£ÃâºÎ¿¡¼­ ŸÀÔ Ã¼Å©¸¦ ÇÒ ¼ö ÀÖ´Ù.

¨é Á¤¼ö, ½Ç¼ö »ó¼öÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Â L, U, F µîÀÇ Á¢¹Ì¾î°¡ Ãß°¡µÇ¾ú´Ù.

¨ê enum, void Çü°ú const, volatile Á¦ÇÑÀÚ°¡ Ãß°¡µÇ¾ú´Ù.

¨ë ÀÎÁ¢ ¹®ÀÚ¿­ »ó¼ö¸¦ ÇÕÃÄ ÁÖ°í È®Àå¿­ÀÇ ±â´Éµµ Ãß°¡µÇ¾ú´Ù.

¨ì ÇÔ¼ö ³»ºÎ¿¡¼­ ¼±¾ðÇÏ´Â Áö¿ª ¹è¿­À̳ª ±¸Á¶Ã¼¸¦ ÃʱâÈ­ÇÒ ¼ö ÀÖ´Ù.

¨í ±¸Á¶Ã¼³¢¸® ´ëÀÔÇÒ °æ¿ì ±¸Á¶Ã¼ Å©±â¸¸Å­ ¸Þ¸ð¸® º¹»ç¸¦ ÇÑ´Ù.

 

ÀÌÈÄ¿¡µµ CÇ¥ÁØÀº Áö¼ÓÀûÀ¸·Î È®ÀåµÇ¾ú´Âµ¥ 95³â¿¡ À¯·´°ú µ¿¾çÀÇ ¾ð¾î¸¦ Áö¿øÇϱâ À§ÇÑ ¸ÖƼ ¹ÙÀÌÆ® ¹®ÀÚ Áö¿øÀÌ Ãß°¡µÇ¾ú´Ù. À̶§ Á¦Á¤µÈ C Ç¥ÁØÀ» C95¶ó°í Çϴµ¥ ANSI C¿¡ ºñÇØ ¾ð¾îÀÇ ±â´É»ó Å« º¯È­´Â ¾ø¾ú´Ù. ±×¸®°í 99³â¿¡ ´Ù¾çÇÑ ±â´ÉÀ» Ãß°¡ÇÏ°í C++ÀÇ ÀåÁ¡À» Èí¼öÇÏ¿© ´Ù½Ã ÇÑ ¹ø °³Á¤µÇ¾úÀ¸¸ç 2005³â °æ¿¡ ¶Ç ÇÑ ¹ø ´õ °³Á¤µÉ ¿¹Á¤ÀÌ´Ù. ±×·¯³ª ½ÇÁ¦ ¿©·¯ºÐµéÀÌ »ç¿ëÇÒ C++Àº ANSI C¸¦ ±âÁØÀ¸·Î Çϱ⠶§¹®¿¡ ±× ÀÌÈÄ¿¡ C¹®¹ý¿¡ ´ëÇؼ­´Â ´çºÐ°£ °ü½ÉÀ» µÎÁö ¾Ê¾Æµµ µÉ µí ÇÏ´Ù.