CERT C ÇÁ·Î±×·¡¹Ö 2/e ¹ö±× ¾ø´Â ¾ÈÀüÇÑ ¼ÒÇÁÆ®¿þ¾î
ÇÁ·Î±×·¡¹Ö ¾ð¾î
Á¤°¡ : 43,000¿ø
ÆǸŰ¡ : 38,700¿ø [10%↓ 4,300¿ø ÇÒÀÎ]
Ã¥¼Ò°³
ÀÌ Ã¥ÀÌ ¼ÓÇÑ ºÐ¾ß
½Å·Ú¼º, º¸¾È¼ºÀ» °®Ãá C ÇÁ·Î±×·¥À» °³¹ßÇÒ ¼ö ÀÖ´Â È¿°úÀûÀÎ ¹æ¹ýÀ» Á¦°øÇÑ´Ù. °ü·Ã ±ÔÄ¢Àº Á¦¸ñ°ú ¼³¸í, ºÎÀûÀýÇÑ ÄÚµå ¿¹Á¦, ±ÔÄ¢¿¡ ºÎÇÕÇÏ´Â ÇØ°á ¹æ¹ýÀ» ÄÚµå ¿¹Á¦·Î ¼³¸íÇÑ´Ù. ¸ÂÃãÇü ¼ÒÇÁÆ®¿þ¾î °³¹ßÀ» À§ÇÑ ÀÌÇØ°ü°èÀÚµéÀÇ ¿ä±¸»çÇ×À» Á¤ÀÇÇϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ¾ÈÀü¼º°ú ½Å·Ú¼ºÀÌ ¿ä±¸µÇ´Â ½Ã½ºÅÛ °³¹ß¿¡¼ ÁöÄÑ¾ß ÇÒ »çÇ×À» À§Çè Æò°¡ Ç׸ñ°ú ¿ì¼±¼øÀ§¿¡ µû¶ó Á¤¸®ÇÏ°í ÀÖ´Ù.
ÀúÀÚ¼Ò°³
Robert C. Seacord Ä«³×±â¸á·Ð´ëÇб³(Carnegie Mellon University)ÀÇ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î¸µ ¿¬±¸¼Ò(SEI, Software Engineering Institut...
´õº¸±â ·Ôµ¥ Á¤º¸Åë½Å¿¡¼ ERP ½Ã½ºÅÛ °³¹ßÀ» À§ÇØ 7³â°£ ÇÁ·Î±×·¡¸Ó·Î ±Ù¹«ÇßÀ¸¸ç ¼´øĶ¸®Æ÷´Ï¾Æ ´ëÇб³ÀÇ Software Engineering Àü°øÀ¸·Î ´ëÇпøÀ» Á¹¾÷Çß´Ù. ÇöÀç´Â ¹Ì±¹ Ķ¸®Æ÷´Ï¾Æ¿¡¼...
´õº¸±â ÀÛ°¡ÀÇ ¸»
¢Â ÁöÀºÀÌÀÇ ¸» ¢Â
ÀÌ Ã¥Àº ¼ÒÇÁÆ®¿þ¾î °³¹ß ½Ã ¹ß»ýÇÏ´Â ÇÁ·Î±×·¥ ¿À·ù ¹× Ãë¾à¼ºÀ» À¯¹ßÇÏ´Â ºÒ¾ÈÀüÇÑ ÇÁ·Î±×·¥ Äڵ带 Á¦°ÅÇØ ¾ÈÀü¼º, ½Å·Ú¼º, º¸¾È¼ºÀ» °®Ãá C ÇÁ·Î±×·¥À» °³¹ßÇÒ ¼ö ÀÖ´Â È¿°úÀûÀÎ ¹æ¹ýÀ» Á¦½ÃÇÑ´Ù. Ã¥¿¡¼ ¸í½ÃÇϴ ǥÁØ ±ÔÄ¢Àº C ¾ð¾î·Î ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÒ ¶§ ÇÁ·Î±×·¥ÀÇ ¾ÈÀü¼º°ú ½Å·Ú¼º, º¸¾È¼ºÀ» º¸ÀåÇÒ ¼ö ÀÖ´Ù. ¹°·Ð CERT C ÇÁ·Î±×·¡¹Ö Ç¥ÁØÀ» ÁؼöÇÏ¸ç µ¿½Ã¿¡ ¾ÈÀüÇÏ°í º¸¾È¼ºÀ» °®Ãá ¼ÒÇÁÆ®¿þ¾î ¼³°è¸¦ µ¿¹ÝÇØ¾ß ÇÑ´Ù. ÀϹÝÀûÀ¸·Î º¸¾È °ü·Ã ½Ã½ºÅÛÀº ÇÁ·Î±×·¡¹ÖÀÇ Ç¥ÁØ ±ÔÄ¢º¸´Ù´Â ¼ÒÇÁÆ®¿þ¾îÀÇ ¿ä±¸ »çÇ׿¡ µû¸¥ ¾ö°ÝÇÑ ÄÚµù ±ÔÄ¢À» µ¿¹ÝÇÑ´Ù. ¿¹¸¦ µé¾î ¸ðµç ¸Þ¸ð¸®ÀÇ Á¤Àû ÇÒ´çÀ» ¿ä±¸ÇÏ´Â ½Ã½ºÅÛÀº ½Å·Ú¼º°ú Æ°Æ°ÇÑ ±¸Á¶ ¹× º¸¾È °ø°Ý¿¡ ´ëÇÑ ¹æ¾î ´É·ÂÀ» °¡Áø ÃÖÀûÈµÈ ÄÚµù Ç¥ÁØÀ» ¼ö¹ÝÇÑ´Ù.
Ç¥ÁØ¿¡ ÇØ´çÇÏ´Â °ü·Ã ±ÔÄ¢Àº Á¦¸ñ°ú ¼³¸í, ºÎÀûÀýÇÑ ÄÚµå ¿¹Á¦(noncompliant code example), ±ÔÄ¢¿¡ ºÎÇÕÇÏ´Â ÇØ°á ¹æ¹ý(compliant solution)À¸·Î ±¸¼ºÇÑ´Ù. Á¦¸ñÀº ÇÔÃàÀûÀ̳ª ¸ðÈ£ÇÏÁö ¾Ê°í ±ÔÄ¢¿¡ ´ëÇÑ ¼³¸íÀ» ³»Æ÷ÇØ¾ß ÇÏ¸ç ¼³¸íÀº °ü·Ã ±ÔÄ¢ÀÇ Á¦¾È°ú ÆÇ´Ü, Æò°¡ÀÇ ±âÁØÀ» ¸í½ÃÇÑ´Ù. ºÎÀûÀýÇÑ ÄÚµå ¿¹Á¦ ºÎºÐÀº °ü·Ã ±ÔÄ¢¿¡ ¾î±ß³ª´Â °ÍÀ» ÄÚµå ¿¹Á¦·Î½á ¼³¸íÇÑ´Ù. ¸¶Áö¸·À¸·Î ±ÔÄ¢¿¡ ºÎÇÕÇÏ´Â ÇØ°á ¹æ¹ýÀº °ü·Ã ±ÔÄ¢¿¡ ÀûÇÕÇÑ ÇØ°á ¹æ¹ýÀ» ÄÚµå ¿¹Á¦¸¦ ÅëÇØ »ìÆ캻´Ù.
°ü·Ã ±ÔÄ¢ÀÌ ¹®¼¿¡ ÀÇÇØ ÃæºÐÈ÷ ÀÔÁõµÇ°í ±Ç°íµÉ ¼ö ÀÖ´Â °ÍÀº C ¾ð¾î ÄÚµù Ç¥ÁØÀÇ ±âº» ¿ä¼Ò´Ù. ÄÚµù Ç¥ÁØÀº ÇÁ·Î±×·¡¸ÓÀÇ °³ÀÎÀûÀÎ ¼±È£µµº¸´Ù´Â ÇÁ·ÎÁ§Æ®³ª Á¶Á÷, ÀÌÇØ°ü°èÀÚÀÇ ¿ä±¸ »çÇ׿¡ ÀÇÇØ Á¤ÀǵǴ ÅëÀÏµÈ ±ÔÄ¢ ¹× ±Ç°íÀ̸ç, ÇÁ·Î±×·¡¸Ó°¡ µû¶ó¾ß ÇÏ´Â ÄÚµù Ç¥ÁØÀÌ´Ù. È®Á¤µÈ ÄÚµù Ç¥ÁØÀº ¼Ò½º Äڵ带 °ËÁõÇϱâ À§ÇÑ µµ±¸·Î »ç¿ëµÈ´Ù. °ËÁõÀº ¼öµ¿ ¶Ç´Â ÀÚµ¿ÀûÀÎ ÇÁ·Î¼¼½º·Î ÀÌ·ïÁø´Ù.
CERT ÄÚµù Ç¥ÁØÀº »ê¾÷ Àü¹Ý¿¡ ³Î¸® »ç¿ëµÇ´Â ±¹Á¦ Ç¥ÁØ °¡À̵å´Ù. ½Ã½ºÄÚ ½Ã½ºÅÛÁî(Ciso Systems)´Â 2011³â 9¿ù SecCon ÄÜÆÛ·±½º¿¡¼ Á¦Ç° °³¹ßÀ» À§ÇÑ ÄÚµù Ç¥ÁØÀ¸·Î CERT C ¾ÈÀüÇÑ ÄÚµù Ç¥ÁØ(CERT C Secure Coding Standard)À» äÅÃÇÑ´Ù°í ¹ßÇ¥Çß´Ù. ÃÖ±Ù ¿À¶óŬ(Oracle)µµ ÇöÀç »ç¿ë ÁßÀÎ º¸¾È ÄÚµù Ç¥ÁØ¿¡ CERT º¸¾È ÄÚµù Ç¥ÁØÀ» »ç¿ëÇÑ´Ù°í ¹àÇû´Ù.
¢Â ¿Å±äÀÌÀÇ ¸» ¢Â
¿Ö ÄÚµù Ç¥ÁØÀ» µû¶ó¾ß Çϴ°¡? ¸¸¾à ÇÁ·Î±×·¡¸ÓµéÀÌ Á¤ÀǵÇÁö ¾ÊÀº ÄÚµù Ç¥ÁØ¿¡¼ ÀڽŸ¸ÀÇ ¹æ½ÄÀ¸·Î ÄÚµùÀ» ÇÑ´Ù¸é ÇÁ·Î±×·¥ ·ÎÁ÷ ¾È¿¡ ÀÎÁöµÇÁö ¾ÊÀº ¹ö±×¿Í ¿¡·¯·Î º¸¾È °ø°Ý¿¡ ½±°Ô ³ëÃâµÉ ¼ö ÀÖ´Ù. ¶ÇÇÑ ¼ÒÇÁÆ®¿þ¾îÀÇ ¼º´É ÀúÇÏ·Î »ç¿ëÀÚ, ¼ÒÇÁÆ®¿þ¾î, Çϵå¿þ¾î ½Ã½ºÅÛ Àüü¿¡ ¾Ç¿µÇâÀ» ¾ß±âÇÒ ¼ö ÀÖ´Ù.
ÀÌ Ã¥¿¡¼´Â ¼ÒÇÁÆ®¿þ¾î °³¹ß ½Ã¿¡ ¹ß»ýÇÏ´Â ¹ö±×¿Í ÇÁ·Î±×·¥ÀÇ Ãë¾à¼ºÀ» À¯¹ßÇÏ´Â Äڵ带 Á¦°ÅÇØ ¾ÈÀüÇÏ°í ½Å·ÚÇÒ ¼ö ÀÖ´Â C ÇÁ·Î±×·¥À» °³¹ßÇÏ´Â ¹æ¹ýÀ» Á¦½ÃÇÑ´Ù. Ç¥ÁØ¿¡ ÇØ´çÇÏ´Â °ü·Ã ±ÔÄ¢À» Á¦¸ñ°ú ¼³¸í, ºÎÀûÀýÇÑ ÄÚµå ¿¹Á¦, ±ÔÄ¢¿¡ ºÎÇÕÇÏ´Â ÇØ°á ¹æ¹ýÀ¸·Î ±¸¼ºÇؼ µ¶ÀÚµéÀÌ ½Ç¿ëÀûÀ¸·Î ÀÌÇØÇÒ ¼ö ÀÖµµ·Ï Á¤¸®Çß´Ù. ¶ÇÇÑ ÇÁ·ÎÁ§Æ® ½Ã¿¡ ÀÌÇØ°ü°èÀÚÀÇ ¿ä±¸»çÇ× Á¤¸®¿Í ¼Ò½º Äڵ带 °ËÁõÇϱâ À§ÇÑ µµ±¸·Î »ç¿ëÇϱâ À§ÇØ À§Çè Æò°¡ Ç׸ñÀ» Æ÷ÇÔÇÏ°í ÀÖ´Ù. °³¹ßÀÚÀÇ ºÎÀûÀýÇÑ ÄÚµå·Î ÀÎÇØ ¹ß»ýÇÏ´Â ÀáÀçÀûÀÎ À§ÇèÀ» ¾Ë·ÁÁÖ¸ç, À§Çè ¿ä¼Ò¸¦ Á¦°ÅÇϱâ À§ÇØ ¿¹»óµÇ´Â ºñ¿ëµµ ÇÔ²² Á¦½ÃÇÏ°í ÀÖ´Ù. À§Çè Æò°¡ Ç׸ñÀº °³¹ß ÆÀ ³»¿¡¼ ¹®Á¦ ÇØ°áÀ» À§ÇÑ ¿ì¼±¼øÀ§¸¦ °áÁ¤ÇÏ´Â µ¥ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù.
CERT ÄÚµù Ç¥ÁØÀº ÇöÀç »ê¾÷ Àü¹Ý¿¡ °ÉÃÄ ³Î¸® »ç¿ëµÇ´Â ±¹Á¦ Ç¥ÁØ °¡À̵åÀ̸ç C ÄÚµå °³¹ßÀÚ°¡ È¿°úÀûÀ¸·Î È°¿ëÇÒ ¼ö ÀÖ´Â ±æÀâÀÌ°¡ µÉ °ÍÀÌ´Ù. ÀÌÇØ°ü°èÀÚÀÇ ¿ä±¸»çÇ×À» È¿°úÀûÀ¸·Î Á¤¸®ÇÏ°í ¹ö±× ¾øÀÌ ¾ÈÀüÇÏ¸ç º¸¾È °ø°ÝÀ» °ßµô ¼ö ÀÖ´Â °ß°íÇÑ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀ» ¿øÇÏ´Â °³¹ßÀÚ¿¡°Ô Âü°íÇÒ ¸¸ÇÑ °¡Ä¡°¡ Àִ åÀ̶ó »ý°¢ÇÑ´Ù.
¸ñÂ÷
1Àå. Àü󸮱â
__PRE30-C. À¯´Ï¹ö¼³ ¹®ÀÚ À̸§À» ¿©·¯ ¹®ÀÚ¿¿¡ ºÙ¿©¼ ¸¸µéÁö ¸¶¶ó
__PRE31-C. ºÒ¾ÈÀüÇÑ ¸ÅÅ©·Î¿¡ ¸Å°³ º¯¼ö·Î ÀÎÇÑ ºÎ¼ö È¿°ú¸¦ ÇÇÇ϶ó
__PRE32-C. ÇÔ¼öÇü ¸ÅÅ©·Î È£Ãâ¿¡ Àüó¸® Áö½ÃÀÚ¸¦ »ç¿ëÇÏÁö ¸¶¶ó
2Àå. ¼±¾ð°ú ÃʱâÈ
__DCL30-C. °´Ã¼¸¦ ¼±¾ðÇÒ ¶§ ÀûÀýÇÑ Áö¼Ó °ø°£À» ÁöÁ¤Ç϶ó
__DCL31-C. ½Äº°ÀÚ¸¦ »ç¿ëÇϱâ Àü¿¡ ¸ÕÀú ¼±¾ðÇ϶ó
__DCL36-C. ¿¬°á(¸µÅ©) ºÐ·ù¿¡¼ Ãæµ¹ÇÏ´Â ½Äº°ÀÚ¸¦ ¼±¾ðÇÏÁö ¸¶¶ó
__DCL37-C. ¿¹¾à¾î¸¦ ½Äº°ÀÚ·Î ¼±¾ðÇϰųª Á¤ÀÇÇÏÁö ¸¶¶ó
__DCL38-C. À¯¿¬ÇÑ ¹è¿ÀÇ ¸â¹ö¸¦ ¼±¾ðÇÒ ¶§ Á¤È®ÇÑ ¹®¹ýÀ» »ç¿ëÇ϶ó
__DCL39-C. ±¸Á¶Ã¼ Æеù¿¡¼ Á¤º¸ÀÇ ´©ÃâÀ» ÇÇÇ϶ó
__DCL40-C. µ¿ÀÏÇÑ ÇÔ¼ö³ª °´Ã¼¿¡ ȣȯµÇÁö ¾Ê´Â ¼±¾ðÀ» »ý¼ºÇÏÁö ¸¶¶ó
__DCL41-C. switch±¸¹®¿¡ ù ¹ø° case Àý ¾Õ¿¡ º¯¼ö¸¦ ¼±¾ðÇÏÁö ¸¶¶ó
3Àå. Ç¥Çö½Ä
__EXP30-C. ºÎ¼ö È¿°ú·Î ÀÎÇÑ Æò°¡ ¼ø¼¿¡ ÀÇÁ¸ÇÏÁö ¸¶¶ó
__EXP32-C. volatileÀÌ ¾Æ´Ñ ÂüÁ¶ÀÚ·Î volatile °´Ã¼¿¡ Á¢±ÙÇÏÁö ¸¶¶ó
__EXP33-C. ÃʱâȵÇÁö ¾ÊÀº ¸Þ¸ð¸®¸¦ ÀÐÁö ¸¶¶ó
__EXP34-C. ³Î Æ÷ÀÎÅ͸¦ ¿ªÂüÁ¶ÇÏÁö ¸¶¶ó
__EXP35-C. Àӽà Á¸¼Ó ±â°£À» °¡Áø °´Ã¼¸¦ ¼öÁ¤ÇÏÁö ¸¶¶ó
__EXP36-C. Æ÷ÀÎÅ͸¦ ´õ ¾ö°ÝÇÏ°Ô ÇÒ´çµÈ Æ÷ÀÎÅÍ Å¸ÀÔÀ¸·Î º¯È¯ÇÏÁö ¸¶¶ó
__EXP37-C. ÀÎÀÚÀÇ Á¤È®ÇÑ °³¼ö¿Í ŸÀÔÀ¸·Î ÇÔ¼ö¸¦ È£ÃâÇ϶ó
__EXP39-C. ȣȯµÇÁö ¾Ê´Â ŸÀÔÀÇ Æ÷ÀÎÅÍ º¯¼ö¿¡ Á¢±ÙÇÏÁö ¸¶¶ó
__EXP40-C. »ó¼ö °´Ã¼¸¦ ¼öÁ¤ÇÏÁö ¸¶¶ó
__EXP42-C. Æеù µ¥ÀÌÅ͸¦ ºñ±³ÇÏÁö ¸¶¶ó
__EXP43-C. restrict·Î ÁöÁ¤µÈ Æ÷ÀÎÅ͸¦ »ç¿ëÇÒ ¶§ Á¤ÀǵÇÁö ¾ÊÀº µ¿ÀÛÀ» ÇÇÇ϶ó
__EXP44-C. sizeof, _Alignof, _Generic¿¡¼ ÇÇ¿¬»êÀÚÀÇ ºÎ¼ö È¿°ú¿¡ ÀÇÁ¸ÇÏÁö ¸¶¶ó
__EXP45-C. ¼±Åù®¿¡¼ ÇÒ´çÀ» ÇÏÁö ¸¶¶ó
4Àå. Á¤¼ö
__INT30-C. unsigned Á¤¼ö ¿¬»êÀÌ ·¡ÇεÇÁö ¾Êµµ·Ï ÁÖÀÇÇ϶ó
__INT31-C. Á¤¼ö º¯È¯À¸·Î µ¥ÀÌÅÍ°¡ ¼Õ½ÇµÇ°Å³ª À߸ø 󸮵ÇÁö ¾Êµµ·Ï ÁÖÀÇÇ϶ó
__INT32-C. signed Á¤¼öÀÇ ¿¬»êÀÌ ¿À¹öÇ÷εÇÁö ¾Êµµ·Ï º¸ÀåÇ϶ó
__INT33-C. ³ª´°¼ÀÀ̳ª ³ª¸ÓÁö ¿¬»ê¿¡¼0À¸·Î ³ª´©´Â ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Ê°Ô Ç϶ó
__INT34-C. À½¼ö³ª ÇÇ¿¬»êÀÚÀÇ ºñÆ®º¸´Ù ´õ ¸¹Àº ºñÆ®¸¦ ½ÃÇÁÆ®ÇÏÁö ¸¶¶ó
__INT35-C. Á¤È®ÇÑ Á¤¼ö Á¤¹Ðµµ¸¦ »ç¿ëÇ϶ó
__INT36-C. Æ÷ÀÎÅ͸¦ Á¤¼ö·Î ¶Ç´Â Á¤¼ö¸¦ Æ÷ÀÎÅÍ·Î º¯È¯ÇÒ ¶§ ÁÖÀÇÇ϶ó
5Àå. ºÎµ¿¼Ò¼öÁ¡
__FLP30-C. ºÎµ¿¼Ò¼öÁ¡ º¯¼ö¸¦ ¹Ýº¹¹®ÀÇ Ä«¿îÅÍ·Î »ç¿ëÇÏÁö ¸¶¶ó
__FLP32-C. ¼öÇÐ ÇÔ¼ö¿¡¼ µµ¸ÞÀÎ ¿¡·¯³ª ¿µ¿ª ¿¡·¯¸¦ ã°í ¿¹¹æÇ϶ó
__FLP34-C. ºÎµ¿¼Ò¼öÁ¡ º¯È¯ÀÌ »õ·Î¿î ŸÀÔÀÇ ¹üÀ§ ¾È¿¡ µé¾î°¡´ÂÁö È®ÀÎÇ϶ó
__FLP36-C. Á¤¼ý°ªÀ» ºÎµ¿¼Ò¼öÁ¡À¸·Î º¯È¯ÇÒ ¶§ Á¤¹Ðµµ¸¦ º¸Á¸Ç϶ó
6Àå. ¹è¿
__ARR30-C. °æ°è¸¦ ÃÊ°úÇÑ Æ÷ÀÎÅͳª ¹è¿ ÷ÀÚ¸¦ ¸¸µé°Å³ª »ç¿ëÇÏÁö ¸¶¶ó
__ARR32-C. °¡º¯ ¹è¿¿¡¼ Å©±â¸¦ ³ªÅ¸³»´Â ÀÎÀÚ°¡ À¯È¿ÇÑ ¹üÀ§¿¡ ÀÖÀ½À» º¸ÀåÇ϶ó
__ARR36-C. °°Àº ¹è¿À» ÂüÁ¶ÇÏÁö ¾ÊÀ¸¸é 2°³ÀÇ Æ÷ÀÎÅ͸¦ »©°Å³ª ºñ±³ÇÏÁö ¸¶¶ó
__ARR37-C. ¹è¿ÀÌ ¾Æ´Ñ °´Ã¼¿¡ ´ëÇÑ Æ÷ÀÎÅÍ¿¡ Á¤¼ö¸¦ ´õÇϰųª »©Áö ¸¶¶ó
__ARR38-C. ¶óÀ̺귯¸® ÇÔ¼ö°¡ À¯È¿ÇÏÁö ¾ÊÀº Æ÷ÀÎÅ͸¦ ¸¸µéÁö ¾Êµµ·Ï º¸ÀåÇ϶ó
__ARR39-C. Æ÷ÀÎÅÍ¿¡ ½ºÄÉÀϸµµÈ Á¤¼ö¸¦ ´õÇϰųª »©Áö ¸¶¶ó
7Àå. ¹®ÀÚ¿Í ¹®ÀÚ¿
__STR30-C. ¹®ÀÚ¿ ¸®ÅÍ·²À» ¼öÁ¤ÇÏ·Á°í ÇÏÁö ¸¶¶ó
__STR31-C. ¹®ÀÚ¿À» À§ÇÑ °ø°£ÀÌ ¹®ÀÚ µ¥ÀÌÅÍ¿Í ³Î Á¾·á ¹®ÀÚ¸¦ ´ã±â¿¡ ÃæºÐÇÔÀ» º¸ÀåÇ϶ó
__STR32-C. ¹®ÀÚ¿À» ó¸®ÇÏ´Â ¶óÀ̺귯¸® ÇÔ¼ö¿¡ ³Î Á¾·á ¹®ÀÚ°¡ ¾ø´Â ¹®ÀÚ¿À» Àü´ÞÇÏÁö ¸¶¶ó
__STR34-C. ¹®ÀÚ¿À» ´õ Å« ŸÀÔÀÎ Á¤¼ö·Î º¯È¯Çϱâ Àü¿¡ unsigned ŸÀÔÀ¸·Î ij½ºÆÃÇ϶ó
__STR37-C. ¹®ÀÚ¸¦ ó¸®ÇÏ´Â ÇÔ¼ö·Î Àü´ÞµÇ´Â ÀÎÀÚ´Â ¹Ýµå½Ã unsigned char·Î Ç¥Çö °¡´ÉÇØ¾ß ÇÑ´Ù
__STR38-C. ¿ÍÀ̵å¿Í ³»·Î ŸÀÔÀÇ ¹®ÀÚ¿°ú ÇÔ¼ö¸¦ È¥µ¿ÇÏÁö ¸¶¶ó
8Àå. ¸Þ¸ð¸® °ü¸®(MEM)
__MEM30-C. ÇØÁ¦µÈ ¸Þ¸ð¸®¿¡ Á¢±ÙÇÏÁö ¸¶¶ó
__MEM31-C. µ¿ÀûÀ¸·Î ÇÒ´çµÈ ¸Þ¸ð¸®´Â ´õ ÀÌ»ó ÇÊ¿ä ¾øÀ» ¶§ ÇØÁ¦Ç϶ó
__MEM33-C. À¯¿¬ÇÑ ¹è¿ ¿ø¼Ò¸¦ Æ÷ÇÔÇÏ´Â µ¿ÀûÀÎ ±¸Á¶Ã¼¸¦ ÇÒ´çÇÏ°í º¹»çÇ϶ó
__MEM34-C. µ¿ÀûÀ¸·Î ÇÒ´çµÈ ¸Þ¸ð¸®¸¸ ÇØÁ¦Ç϶ó
__MEM35-C. °´Ã¼¿¡ ÃæºÐÇÑ ¸Þ¸ð¸®¸¦ ÇÒ´çÇ϶ó
__MEM36-C. realloc() È£Ãâ·Î °´Ã¼ÀÇ Á¤·ÄÀ» ¼öÁ¤ÇÏÁö ¸¶¶ó
9Àå. ÀԷ°ú Ãâ·Â(FIO)
__FIO30-C. Æ÷¸Ë ¹®ÀÚ¿¿¡¼ »ç¿ëÀÚ ÀÔ·ÂÀ» ¹èÁ¦Ç϶ó
__FIO31-C. ÀÌ¹Ì ¿·Á ÀÖ´Â ÆÄÀÏÀ» ´Ù½Ã ¿Áö ¸¶¶ó
__FIO32-C. ÆÄÀÏ¿¡¸¸ Àû¿ë °¡´ÉÇÑ ¿¬»êÀ» ÀåÄ¡¿¡ ´ëÇØ ¼öÇàÇÏÁö ¸¶¶ó
__FIO34-C. ÆÄÀÏ¿¡¼ Àоî¾ß ÇÒ ¹®ÀÚ¿Í EOF¶Ç´Â WEOF¸¦ ±¸º°Ç϶ó
__FIO37-C. fgets() ¶Ç´Â fgetws()°¡ ¼º°ø ½Ã ºñ¾î ÀÖÁö ¾ÊÀº ¹®ÀÚ¿À» ¹ÝȯÇÑ´Ù°í °¡Á¤ÇÏÁö ¸¶¶ó
__FIO38-C. ÀÔÃâ·Â FILE°´Ã¼¸¦ º¹»çÇÏÁö ¸¶¶ó
__FIO39-C. Ç÷¯½Ã³ª À§Ä¡ Á¶Á¤ ÇÔ¼ö È£Ãâ ¾øÀÌ ½ºÆ®¸²À¸·ÎºÎÅÍ ÀÔÃâ·ÂÀ» ±³´ë·Î ¼öÇàÇÏÁö ¸¶¶ó
__FIO40-C. fgets() ¶Ç´Â fgetws() ½ÇÆÐ ½Ã ¹®ÀÚ¿À» ¸®¼ÂÇ϶ó
__FIO41-C. ºÎ¼ö È¿°ú°¡ ÀÖ´Â ½ºÆ®¸² ÀÎÀÚ·Î getc()³ª putc(), getws(), putwc()¸¦ È£ÃâÇÏÁö ¸¶¶ó
__FIO42-C. ´õ ÀÌ»ó ÇÊ¿ä ¾ø¾îÁø ÆÄÀÏÀÌ ÀûÀýÈ÷ ´ÝÇû´ÂÁö È®ÀÎÇ϶ó
__FIO44-C. fsetpos()¿¡´Â fgetpos()¿¡¼ ¹ÝȯµÈ °ª¸¸ »ç¿ëÇ϶ó
__FIO45-C. ÆÄÀÏ¿¡ Á¢±ÙÇÏ´Â µ¿¾È TOCTOU °æÀï »óŸ¦ ÇÇÇ϶ó
__FIO46-C. ´ÝÇô ÀÖ´Â ÆÄÀÏ¿¡ Á¢±ÙÇÏÁö ¸¶¶ó
__FIO47-C. À¯È¿ÇÑ Æ÷¸Ë ¹®ÀÚ¿À» »ç¿ëÇ϶ó
10Àå. ȯ°æ(ENV)
__ENV30-C. ÇÔ¼ö¿¡¼ ¹ÝȯÇÏ´Â °ªÀ» ÂüÁ¶ÇÏ´Â °´Ã¼¸¦ ¼öÁ¤ÇÏÁö ¸¶¶ó
__ENV31-C. ȯ°æ º¯¼öÀÇ °ªÀ» ¹«È¿ÈÇÒ ¼ö ÀÖ´Â ¿¬»êÀ» ¼öÇàÇß´Ù¸é ´õ ÀÌ»ó ±× °ª¿¡ ÀÇÁ¸ÇÏÁö ¸¶¶ó
__ENV32-C. ¸ðµç exit Çڵ鷯´Â ¹Ýµå½Ã ¹Ýȯ¿¡ ÀÇÇØ Á¾·áÇØ¾ß ÇÑ´Ù
__ENV33-C. system()À» È£ÃâÇÏÁö ¸¶¶ó
__ENV34-C. ÇÔ¼ö¿¡¼ ¹ÝȯÇÏ´Â Æ÷ÀÎÅ͸¦ ÀúÀåÇÏÁö ¸¶¶ó
11Àå. ½Ã±×³Î(SIG)
__SIG30-C. ½Ã±×³Î Çڵ鷯¿¡¼´Â ºñµ¿±âÀûÀ¸·Î ¾ÈÀüÇÑ ÇÔ¼ö¸¸ È£ÃâÇ϶ó
__SIG31-C. ½Ã±×³Î Çڵ鷯¿¡¼ °øÀ¯ °´Ã¼¿¡ Á¢±ÙÇϰųª ¼öÁ¤ÇÏÁö ¸¶¶ó
__SIG34-C. ÀÎÅÍ·´Æ® °¡´ÉÇÑ ½Ã±×³Î Çڵ鷯 ¾È¿¡¼ signal()À» È£ÃâÇÏÁö ¸¶¶ó
__SIG35-C. ¿¬»êÀÇ ¿¹¿Ü ½Ã±×³Î Çڵ鷯¿¡¼ ¹ÝȯÀ» ÇÏÁö ¸¶¶ó
12Àå. ¿¡·¯ ó¸®(ERR)
__ERR30-C. errno¸¦ »ç¿ëÇÏ´Â ¶óÀ̺귯¸® ÇÔ¼ö¸¦ È£ÃâÇϱâ Àü¿¡ errno °ªÀ» 0À¸·Î ¼³Á¤ÇÏ°í, ÇÔ¼ö°¡ ¿¡·¯¸¦ ÀǹÌÇÏ´Â °ªÀ» ¹ÝȯÇßÀ» ¶§´Â errno °ªÀ» üũÇ϶ó
__ERR32-C. ¾Ö¸ÅÇÑ errno °ª¿¡ ÀÇÁ¸ÇÏÁö ¸¶¶ó
__ERR33-C. Ç¥ÁØ ¶óÀ̺귯¸® ¿¡·¯¸¦ ¹ß°ßÇÏ°í ó¸®Ç϶ó
13Àå. µ¿½Ã(CON)
__CON30-C. ½º·¹µå ÁöÁ¤ °ø°£À» Ŭ¸°¾÷Ç϶ó
__CON31-C. ¹ÂÅؽº°¡ Àá±Ý »óÅÂÀÏ °æ¿ì¿¡ ¾ø¾ÖÁö ¸¶¶ó
__CON32-C. ¸ÖƼ½º·¹µå¿¡¼ ºñÆ® Çʵ忡 Á¢±ÙÇÒ ¶§¿¡ µ¥ÀÌÅÍ °æÀïÀ» ¿¹¹æÇ϶ó
__CON33-C. ¶óÀ̺귯¸® ÇÔ¼ö¸¦ »ç¿ëÇÒ ¶§ °æÀï »óŸ¦ ÇÇÇ϶ó
__CON34-C. ÀûÇÕÇÑ ÀúÀå Á¸¼Ó ±â°£À» °¡Áø ½º·¹µå »çÀÌ¿¡¼ °øÀ¯µÇ´Â °´Ã¼¸¦ ¼±¾ðÇ϶ó
__CON35-C. ¹Ì¸® Á¤ÀÇµÈ ¼ø¼¿¡¼ Àá±ÝÀ¸·Î ÀÎÇÑ ±³Âø »óŸ¦ ÇÇÇ϶ó
__CON36-C. ¹Ýº¹¹®¿¡¼ ºÎÁ¤ÇÏ°Ô µ¿ÀÛÇÒ ¼ö ÀÖ´Â ÇÔ¼ö¸¦ ·¡ÇÎÇ϶ó
__CON37-C. ¸ÖƼ½º·¹µå ÇÁ·Î±×·¥¿¡¼ signal() ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¸¶¶ó
__CON38-C. Á¶°Ç º¯¼ö¸¦ »ç¿ëÇÒ ¶§ ½º·¹µåÀÇ ¾ÈÀü¼º°ú »ýÁ¸»óŸ¦ º¸Á¸Ç϶ó
__CON39-C. ÀÌ¹Ì º´Çյǰųª ºÐ¸®µÆ´ø ½º·¹µå¸¦ ´Ù½Ã »ç¿ëÇÏÁö ¸¶¶ó
__CON40-C. Ç¥Çö½Ä¿¡¼ ¾ÆÅä¹Í º¯¼ö¸¦ µÎ ¹ø ÂüÁ¶ÇÏÁö ¸¶¶ó
__CON41-C. ¹Ýº¹¹®¿¡¼ ºÎÁ¤ÇÏ°Ô ½ÇÆÐÇÒ ¼ö ÀÖ´Â ÇÔ¼ö¸¦ ·¡ÇÎÇ϶ó
14Àå. ±âŸ(MSC)
__MSC30-C. ÀÇ»ç ³¼ö¸¦ ¸¸µé·Á°í rand() ÇÔ¼ö¸¦ »ç¿ëÇÏÁö ¸¶¶ó
__MSC32-C. ÀÇ»ç ³¼ö »ý¼º±â¸¦ ÀûÇÕÇÏ°Ô ½ÃµåÇ϶ó
__MSC33-C. Ç¥ÁØ ¶óÀ̺귯¸® ¿¡·¯¸¦ ¹ß°ßÇÏ°í ó¸®Ç϶ó
__MSC37-C. Á¦¾î½ÄÀÌ void°¡ ¾Æ´Ñ ÇÔ¼öÀÇ ³¡¿¡ µµ´ÞÇÏÁö ¾Êµµ·Ï º¸ÀåÇ϶ó
__MSC38-C. ¸ÅÅ©·Î·Î ±¸ÇöµÇ´Â °´Ã¼¸¦ ÀÌ¹Ì Á¤ÀÇµÈ ½Äº°ÀÚ·Î Ãë±ÞÇÏÁö ¸¶¶ó
__MSC39-C. ÁöÁ¤µÇÁö ¾ÊÀº °ªÀ» °¡Áø va_list¿¡¼ va_arg() ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¸¶¶ó
__MSC40-C. Á¦ÇÑ »çÇ×À» À§¹ÝÇÏÁö ¸¶¶ó
ºÎ·Ï A. ¿ë¾î ¼³¸í
ºÎ·Ï B. Á¤ÀǵÇÁö ¾ÊÀº µ¿ÀÛ
ºÎ·Ï C. ÁöÁ¤µÇÁö ¾ÊÀº µ¿ÀÛ
µµ¼¸í |
[»ó¼¼¼³¸íÂüÁ¶] |
ÀúÀÚ, ÃâÆÇ»ç |
[»ó¼¼¼³¸íÂüÁ¶] |
Å©±â |
[»ó¼¼¼³¸íÂüÁ¶] |
Âʼö |
[»ó¼¼¼³¸íÂüÁ¶] |
Á¦Ç°±¸¼º |
[»ó¼¼¼³¸íÂüÁ¶] |
¹ßÇàÀÏ |
[»ó¼¼¼³¸íÂüÁ¶] |
¸ñÂ÷ ¶Ç´Â Ã¥¼Ò°³ |
[»ó¼¼¼³¸íÂüÁ¶] |