http://www.hackerschool.org/HS_Boards/zboard.php?desc=desc&no=8011 [º¹»ç]
14-1-´Ù.½ÃºÐÇÒ
µ¿½Ã¿¡ ¿©·¯ °³ÀÇ ½ÅÈ£¸¦ À̵¿½ÃÅ°´Â ·çÇÁ¸¦ ¾î¶»°Ô ¼³°èÇÒ ¼ö ÀÖÀ»Áö »ý°¢Çغ¸°í °¡´ÉÇÑ ¿©·¯ °¡Áö ¹æ¹ýµéÀ» ºñ±³ÇØ º¸ÀÚ. ¼¼ °³ÀÇ ½ÅÈ£ M1, M2, M3¸¦ µ¿½Ã¿¡ ¿òÁ÷ÀÌ°í ½ÍÀ» ¶§ ´ÙÀ½°ú °°Àº ·çÇÁ¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.
for (;;) {
M1 À̵¿
M2 À̵¿
M3 À̵¿
}
¸Å ·çÇÁ¸¦ µ¹ ¶§¸¶´Ù M1, M2, M3¸¦ ÇÑ Ä¾¿ À̵¿½ÃÅ°´Â ·çÇÁÀε¥ ÀÌ·¸°Ô ÇÏ¸é ¼¼ °³ÀÇ ½ÅÈ£°¡ µ¿½Ã¿¡ À̵¿Çϱâ´Â ÇÏÁö¸¸ ¼Óµµ°¡ ÀÏÁ¤ÇÒ °ÍÀÌ´Ù. ¼ÓµµÀÇ Â÷À̸¦ ÁÖ·Á¸é °¢ ½ÅÈ£°¡ ÇÑ ¹ø¿¡ ¾ó¸¶¸¸Å À̵¿ÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇÏ´Â °ªÀÌ ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ °ªÀ» speed ¸â¹ö·Î Á¤ÀÇÇÏ°í °¢°¢ 1,2,3À¸·Î Áشٸé M1ÀÌ ÇÑ Ä ¿òÁ÷ÀÏ ¶§ M2´Â µÎ Ä, M3´Â ¼¼ Ä ¿òÁ÷¿© ¼ÓµµÀÇ Â÷ÀÌ°¡ ¹ß»ýÇÒ °ÍÀÌ´Ù.
±×·¯³ª ÀÌ·¸°Ô µÇ¸é ¼Óµµ°¡ ºü¸¥ ½ÅÈ£´Â ÇÑ ¹ø¿¡ ¿©·¯ ÄÀ» ¿òÁ÷À̱⠶§¹®¿¡ ¸Å²ô·¯¿ö º¸ÀÌÁö ¾Ê´Â´Ù. ±×·¡¼ À̵¿ ¼Óµµ¸¦ Á¤¼ö·Î ÁÙ ¼ö´Â ¾øÀ¸¸ç ½Ç¼ö¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. 1 ¹Ì¸¸ÀÇ ½Ç¼ö·Î À̵¿ ¼Óµµ¸¦ Á¤ÀÇÇϸé ÇÑ ¹ø¿¡ µÎ ľ¿ À̵¿ÇÏÁö ¾ÊÀ¸¸é¼µµ ºÎµå·´°Ô À̵¿ 󸮵ȴÙ. ÇÏÁö¸¸ ½Ç¼ö¸¦ ¾²°Ô µÇ¸é ¼Óµµ°¡ ´À·ÁÁö´Â Å« ¹®Á¦Á¡ÀÌ ÀÖ°í ¶ÇÇÑ ½ÇÁ¦·Î À̵¿ÇÏÁö ¾Ê´Â ½ÅÈ£¿¡ ´ëÇؼµµ Áö¼ÓÀûÀ¸·Î ÁÂÇ¥¸¦ °»½ÅÇÏ°í Ãâ·Â±îÁö ÇØ¾ß ÇÑ´Ù´Â ¹®Á¦°¡ ÀÖ´Ù. ÁÂÇ¥°¡ ¹Ù²îÁöµµ ¾Ê¾Ò´Âµ¥ Áö¿ü´Ù ±×¸²À¸·Î½á ¼Óµµ´Â ´õ ´À·ÁÁö°í ȸéÀº °è¼Ó ±ô¹Ú°Å·Á Ç°Áúµµ ¶³¾îÁø´Ù.
Á» ´õ ÁÁÀº ¹æ¹ýÀº ¼Óµµ¸¦ À̵¿ °Å¸®·Î ÅëÁ¦ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ÁÖ±â·Î ÅëÁ¦ÇÏ´Â ¹æ½ÄÀÌ´Ù. ÀÌ °³³äÀ» ½ÃºÐÇÒ(Time Sharing) ¹æ½ÄÀ̶ó°í Çϴµ¥ ½Ã°£À» ¾ÆÁÖ Àß°Ô Á¶°¢³»¾î ½Ã°£À» ÇÊ¿ä·Î ÇÏ´Â ´ë»ó¿¡°Ô ³ª´©¾î ÁÖ´Â °ÍÀÌ´Ù. ¿î¿µÃ¼Á¦°¡ ¸ÖƼ ŽºÅ·À» ÇÏ´Â ±âº» ¹æ½ÄÀÌ ¹Ù·Î ½ÃºÐÇÒÀÌ´Ù. À̶§ ºÐÇÒµÈ ½Ã°£À» ½Ã°£ Á¶°¢(Time Slice, ÄöÅÒÀ̶ó°í ÇÑ´Ù.)À̶ó°í ÇÑ´Ù. °¢ ½ÅÈ£°¡ ¸î ¹øÀÇ ½Ã°£ Á¶°¢¿¡ ´ëÇØ ÇÑ ¹ø ¿òÁ÷ÀÏ °ÍÀΰ¡¸¦ ±â¾ïÇϴµ¥ Signal ±¸Á¶Ã¼¿¡¼ nFrameÀÌ ¹Ù·Î ÀÌ Á¤º¸ÀÌ´Ù. °¡·É M1, M2, M3¿¡ ´ëÇØ nFrameÀÌ 3, 4, 6À¸·Î Á¤ÀǵǾî ÀÖ´Ù¸é ÀÌ ½ÅÈ£µéÀº ´ÙÀ½°ú °°ÀÌ ¿òÁ÷ÀÏ °ÍÀÌ´Ù.
À̵¿ ÁֱⰡ ´Ù¸§À¸·Î Çؼ M1ÀÌ ³× ¹ø ¿òÁ÷ÀÏ ¶§ M2´Â ¼¼ ¹ø¹Û¿¡ ¿òÁ÷ÀÌÁö ¸øÇϸç M3´Â µÎ ¹ø¸¸ ¿òÁ÷ÀÏ °ÍÀÌ´Ù. nFrameÀÌ Å¬¼ö·Ï ½ÅÈ£ÀÇ À̵¿ ÁÖ±â´Â ±æ¾îÁö°í À̵¿ ¼Óµµ´Â ´À·ÁÁø´Ù. À̵¿ ÁÖ±â´Â Á¤¼öÀ̹ǷΠ´À¸®Áö ¾ÊÀ¸¸ç ¶ÇÇÑ ÁֱⰡ µÇÁö ¾ÊÀº ½ÅÈ£´Â ÁÂÇ¥¸¦ °»½ÅÇÒ ÇÊ¿äµµ ¾ø°í ´Ù½Ã ±×¸± ÇÊ¿äµµ ¾ø¾î ½Ç¼ö¸¦ ¾²´Â ¹æ¹ýº¸´Ù ÈξÀ ´õ ÁÁ´Ù.
main ÇÔ¼ö´Â ¸î °¡Áö °£´ÜÇÑ Ãʱâȸ¦ ÇÑ ÈÄ ¹Ù·Î ¹«ÇÑ ·çÇÁ·Î ÁøÀÔÇϴµ¥ ÀÌ ¹«ÇÑ ·çÇÁÀÇ Àüü ±¸Á¶´Â ´ÙÀ½°ú °°ÀÌ µÇ¾î ÀÖ´Ù.
for (;;) {
....
delay(1000/frame)
}
ÀÌ ·çÇÁÀÇ Á¦ÀÏ ³¡¿¡ ÀÖ´Â delay ¹®ÀÌ ½Ã°£À» ÀÏÁ¤ Å©±â·Î ºÐÇÒÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù. ¸¸¾à ·çÇÁ¸¦ ÇÑ ¹ø µ¹ ¶§¸¶´Ù 0.1Ãʾ¿ ½Ã°£À» Áö¿¬½ÃŲ´Ù¸é 1ÃÊ°¡ 10°³ÀÇ ½Ã°£ Á¶°¢À¸·Î ºÐÇҵǹǷΠÀÌ ·çÇÁ´Â ÃÊ´ç 10¹ø ½ÇÇàµÉ °ÍÀÌ´Ù. frame º¯¼ö°¡ 200À¸·Î ÃʱâȵǾúÀ¸¹Ç·Î delay´Â 0.005Ãʾ¿ ½Ã°£À» Áö¿¬½ÃÅ°¸ç ÃÊ´ç ·çÇÁ ¹Ýº¹ ȸ¼ö´Â 200ÀÌ µÈ´Ù. frame º¯¼ö´Â Áö¿¬ ½Ã°£°ú ¹Ýºñ·Ê °ü°è¿¡ ÀÖÀ¸¸ç ±×·¡¼ frame°ú ·çÇÁ ¹Ýº¹ ¼Óµµ´Â ºñ·ÊÀûÀÌ´Ù.
ÀÌ ·çÇÁ´Â ½Ã°£ Áö¿¬ ÇÔ¼öÀÎ delay·Î ½Ã°£À» Á¶°¢³»´Â °¡Àå ±âÃÊÀûÀÎ ¹æ¹ýÀ» »ç¿ëÇϴµ¥ frameÀÌ ÁöÁ¤Çϴ ȸ¼ö¸¸Å Á¤È®ÇÏ°Ô ¹Ýº¹µÇÁö´Â ¾Ê´Â´Ù. ¿Ö³ÄÇÏ¸é ·çÇÁ ³»ºÎ¿¡´Â delay¿Ü¿¡µµ ½ÅÈ£¸¦ »ý¼ºÇÏ°í À̵¿½ÃÅ°´Â ´Ù¸¥ ÄÚµåµéÀÌ ÀÖÀ¸¸ç ÀÌ ÄÚµåµéµµ ½Ã°£À» ¼Ò¸ðÇϱ⠶§¹®¿¡ ¾à°£ÀÇ ¿ÀÂ÷°¡ ÀÖ´Ù. ½Ã°£ Á¶°¢¿¡¼ ÀÌ ÄÚµåµéÀÇ ½ÇÇà ½Ã°£À» »« ¸¸Å¸¸ Áö¿¬½ÃÅ°¸é Á¤È®ÇØÁú °ÍÀ̸ç Á¤È®ÇÑ ½Ã°£ Á¶°¢À» ¸¸µå´Â Á¤±³ÇÑ ¾Ë°í¸®ÁòµéÀÌ ¸¹ÀÌ °³¹ßµÇ¾î ÀÖ´Ù.
ÀÌ ¿¹Á¦ÀÇ frame º¯¼ö´Â ·çÇÁÀÇ ¼Óµµ¸¦ Á¶ÀýÇÏ´Â ´ëÃæÀÇ °ªÀÌ¸ç ¾à°£ÀÇ ¿ÀÂ÷¸¸ ¹«½ÃÇÏ¸é °ÅÀÇ Á¤È®ÇÑ ½Ã°£ Á¶°¢À» »ý¼ºÇØ ³½´Ù. ¾î·µç frameÀÌ ·çÇÁÀÇ ¹Ýº¹ ¼Óµµ¿Í ºñ·ÊÀûÀ̹ǷΠÀÌ °ªÀ» Á¶ÀýÇÔÀ¸·Î½á ÇÁ·Î±×·¥ÀÇ ¼Óµµ¸¦ Á¶Á¤ÇÒ ¼ö ÀÖ´Ù. ´Ü, Áö¿¬ ½Ã°£ °è»ê¿¡ Á¤¼ö ³ª´°¼ÀÀ» »ç¿ëÇßÀ¸¹Ç·Î frameÀÇ ÀÏÁ¤ ±¸°£º°·Î ¼Óµµ Â÷°¡ ³ª´Âµ¥ 167~200±îÁö´Â ¸ðµÎ 200ÇÁ·¹ÀÓ, 210~249±îÁö´Â 250 ÇÁ·¹ÀÓÀ¸·Î °è»êµÉ °ÍÀÌ´Ù. ¾à°£ÀÇ ¿ÀÂ÷°¡ ÀÖ±â´Â ÇÏÁö¸¸ ÀϹÝÀûÀ¸·Î ÃÊ´ç nÇÁ·¹ÀÓÀ» ¾ò°í ½ÍÀ¸¸é delay(1000/n) Áö¿¬¹®À» »ç¿ëÇÏ¸é µÈ´Ù.
Signal ±¸Á¶Ã¼ÀÇ nFrame ¸â¹ö´Â ¸î °³ÀÇ ÇÁ·¹ÀÓ¿¡ ´ëÇØ ÇÑ ¹ø ¿òÁ÷ÀÏ °ÍÀΰ¡¸¦ ÁöÁ¤Çϴµ¥ ³¼ö·Î 5~24±îÁöÀÇ °ªÀ» °¡Áø´Ù. 5°¡ °¡Àå »¡¶ó¼ ÃÊ´ç 40¹ø ¿òÁ÷ÀÌ°í 24°¡ °¡Àå ´À·Á¼ ÃÊ´ç 8¹ø Á¤µµ ¿òÁ÷ÀδÙ. Signal ±¸Á¶Ã¼¿¡´Â nFrame°ªÀ» Ä«¿îÆ®ÇÏ´Â nStay¶ó´Â º°µµÀÇ ¸â¹ö°¡ ¼±¾ðµÇ¾î Àִµ¥ ÀÌ °ªÀº ÃÖÃÊ nFrame°ú °°Àº °ªÀ¸·Î ÃʱâȵȴÙ. ¸Å ÇÁ·¹ÀÓ¸¶´Ù 1¾¿ °¨¼ÒÇÏ¿© ÀÌ °ªÀÌ 0ÀÌ µÇ¸é ½ÅÈ£¸¦ ÇÑ Ä ¾Æ·¡·Î À̵¿½ÃÅ°¸ç ´Ù½Ã nFrame°ªÀ» ´ëÀԹ޴´Ù. nFrameÀ» Á÷Á¢ Ä«¿îÆ®·Î »ç¿ëÇϸé ÇÑ ¹ø À̵¿ÇÑ ÈÄ ¿ø·¡ ¼Óµµ¸¦ ¾Ë ¼ö ¾ø¾îÁö¹Ç·Î nStay¶ó´Â º°µµÀÇ Ä«¿îÆ®°¡ ÇÊ¿äÇÏ´Ù. nFrameÀº °³Ã¼ÀÇ ¼Ó¼º°ªÀ̸ç nStay´Â ·±Å¸ÀÓ µ¥ÀÌÅÍÀÌ´Ù.
¸ÞÀÎ ·çÇÁÀÇ ½ÅÈ£ À̵¿ Äڵ带 º¸ÀÚ. ÀÏ´Ü 0~MAX±îÁö ·çÇÁ¸¦ µ¹µÇ Á¸ÀçÇÏÁö ¾Ê´Â ½ÅÈ£¿¡ ´ëÇؼ´Â °ü½ÉÀ» °¡Áú ÇÊ¿ä°¡ ¾ø´Ù. exist°¡ FALSEÀÎ ½ÅÈ£´Â Áï½Ã continueÇÏ¿© ·çÇÁÀÇ Ã³À½À¸·Î µ¹·Á º¸³½´Ù. Á¸ÀçÇÏ´Â ½ÅÈ£´Â nStay¸¦ 1°¨¼Ò½ÃÅ°°í ÀÌ °ªÀÌ 0ÀÏ ¶§¸¸ À̵¿ 󸮸¦ Çϴµ¥ ÀÌÀü À§Ä¡ÀÇ ½ÅÈ£¸¦ Áö¿ì°í y¸¦ Áõ°¡½ÃŲ ÈÄ ´Ù½Ã Ãâ·ÂÇÏ¸é µÈ´Ù. ¸¸¾à ÇÑ Ä À̵¿ ÈÄ distance¸¸Å ³»·Á ¿Ô´Ù¸é ÀÌ ½ÅÈ£´Â ¼ö¸íÀÌ ´ÙÇßÀ¸¹Ç·Î »èÁ¦µÈ´Ù. nStay°¡ 0ÀÌ µÇ¸é À̵¿ 󸮻Ӹ¸ ¾Æ´Ï¶ó nStay¸¦ ´Ù½Ã nFrameÀ¸·Î ÃʱâÈÇÏ¿© ´ÙÀ½ ÁÖ±â±îÁö Ä«¿îÆ®Çϵµ·Ï ÇØ¾ß ÇÑ´Ù.
main ÇÔ¼ö¿¡´Â ÀÌ ¿Ü¿¡µµ Å° ÀÔ·ÂÀ» ¹Þ¾Æ ÇÁ·Î±×·¥ÀÇ ¼ÓµµÀÎ frameÀ» Áõ°¨½ÃÅ°´Â ÄÚµå¿Í ½ÅÈ£ÀÇ ¹ß»ý ºóµµÀÎ freq¸¦ Áõ°¨½ÃÅ°´Â Äڵ尡 ÀÛ¼ºµÇ¾î Àִµ¥ ¾ÆÁÖ ½±°Ô ºÐ¼®µÉ °ÍÀÌ´Ù. ½ÃºÐÇÒ °³³äÀº °ÔÀÓó·³ µ¿½Ã¿¡ ¿©·¯ °³ÀÇ ¹°Ã¼°¡ ¿òÁ÷ÀÌ´Â ÇÁ·Î±×·¥¿¡¼ ¹Ýµå½Ã ÇÊ¿äÇÏ´Ù. ¿òÁ÷ÀÓÀÌ ¸¹°í Á¤±³ÇÏ´Ù¸é ÇÁ·¹ÀÓ ¼ö¸¦ ³ô¿©¾ß ÇÏ°í ±×·¸Áö ¾Ê´Ù¸é Á¶±Ý ³·¾Æµµ »ó°ü¾ø´Ù.
ÀÌ ¿¹Á¦ÀÇ µ¿ÀÛ °úÁ¤À» ÀÌÇØÇÏ·Á¸é ¾à°£ÀÇ »ó»ó·ÂÀÌ µ¿¿øµÇ¾î¾ß ÇÑ´Ù. ³»ºÎ¿¡¼ °¢ °³Ã¼µéÀÌ Ä«¿îÆ®¸¦ ¾î¶»°Ô °ü¸®ÇÏ¸ç ¾ðÁ¦ ¿Ö À̵¿ÇÏ´ÂÁö, ¾î¶² Á¶°Ç¿¡ ÀÇÇØ »ý¼º, Æı«µÇ´ÂÁö¸¦ ¸Ó¸®¼ÓÀ¸·Î Àß ±×·Á ºÁ¾ß ÇÑ´Ù. ±×·¯³ª ¾Æ¹«·¡µµ ÀÌ·± °úÁ¤ÀÌ ½Ã°¢ÀûÀ¸·Î º¸ÀÌÁö ¾Ê±â ¶§¹®¿¡ ¾ó¸¥ ÀÌÇصÇÁö´Â ¾ÊÀ» °ÍÀÌ´Ù. ±×·¸´Ù¸é Äڵ带 ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÏ¿© µ¿ÀÛ °úÁ¤À» ½½·Î¿ì ¸ð¼ÇÀ¸·Î È®ÀÎÇØ º¸ÀÚ.
// ÁֱⰡ ´Ù µÈ ½ÅÈ£ À̵¿ ¹× Á¦°Å ó¸®
for (i=0;i<MAX;i++) {
if (S[i].exist == FALSE)
continue;
gotoxy(S[i].x,S[i].y);puts(" ");
if (--S[i].nStay == 0) {
S[i].nStay=S[i].nFrame;
if (++S[i].y >= S[i].distance) {
S[i].exist=FALSE;
}
}
if (S[i].exist) {
gotoxy(S[i].x,S[i].y);
printf("%c-%d:%d ",S[i].ch,S[i].nFrame,S[i].nStay);
}
}
delay(100);
ÇÁ·¹ÀÓ ¼ö¸¦ ÃÊ´ç 10ȸ·Î ³·Ãß¾î ´À¸®°Ô µ¿ÀÛÇϵµ·Ï ÇßÀ¸¸ç °¢ ½ÅÈ£ÀÇ nFrame°ú nStay Á¤º¸¸¦ ±ÛÀÚ ¿·¿¡ ¹®ÀÚ¿·Î Ãâ·ÂÇØ º¸¾Ò´Ù. ³Ê¹« ¸¹Àº ½ÅÈ£µéÀÌ µ¿½Ã¿¡ ³ªÅ¸³ª °á°ú¸¦ º¸±â ¾î·Æ´Ù¸é MAX´Â 3À¸·Î Àá½Ã ³·Ãç ³õ´Â °ÍÀÌ ÁÁ°í 10ÇÁ·¹ÀÓÀÌ ³Ê¹« ºü¸£´Ù¸é delay(1000)À¸·Î ¼öÁ¤ÇÏ¿© ¾ÆÁÖ ÃµÃµÈ÷ Áß°£ °úÁ¤À» »ìÆ캼 ¼öµµ ÀÖ´Ù.
============================================================================
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 1024
#define LEFT 75
#define RIGHT 77
#define UP 72
#define DOWN 80
#define ESC 27
void gotoxy(int x, int y);
struct Signal
{
BOOL exist; // ½ÅÈ£ÀÇ Á¸Àç ¿©ºÎ
char ch; // Ãâ·ÂÇÒ ¹®ÀÚ
int x, y; // ÇöÀç ÁÂÇ¥
int distance; // À̵¿ÇÒ °Å¸®
int nFrame; // ¼Óµµ
int nStay; // ¼Óµµ¿¡ ´ëÇÑ Ä«¿îÆ®
};
struct Signal S[MAX];
void main()
{
int i;
int ch;
int freq = 15;
int frame = 200;
//clrscr();
gotoxy(1, 23);//gotoxy(0,23);
printf("¸ÅÆ®¸¯½º Èä³»³»±â. »óÇÏ:¼Óµµ Áõ°¨, Á¿ì:ºóµµ Áõ°¨, ESC:Á¾·á");
//randomize();
for (;;) {
gotoxy(60, 23);
printf("¼Óµµ:%d, ºóµµ:%d ", frame, freq);
// Å° ÀԷ ó¸®
if (kbhit()) {
ch = getch();
if (ch == 0xE0) {
ch = getch();
switch (ch) {
case UP:
frame = min(frame + 10, 1000);
break;
case DOWN:
frame = max(frame - 10, 10);
break;
case RIGHT:
freq = max(freq - 1, 1);
break;
case LEFT:
freq = min(freq + 1, 30);
break;
}
}
else {
if (ch == ESC) {
return;
}
}
}
// »õ·Î¿î ½ÅÈ£ »ý¼º
if (rand() % (freq + 1) == 0) //(random(freq) == 0)
{
for (i = 0; i < MAX; i++) {
if (S[i].exist == false) {
S[i].exist = TRUE;
S[i].ch = rand() % 26 + 65; //random('Z'-'A'+1)+'A';
S[i].x = rand() % 81; //random(80);
S[i].y = 0;
S[i].distance = rand() % 15 + 9; //random(14)+9;
S[i].nFrame = S[i].nStay = rand() % 16 + 5;//random(15)+5;
break;
}
}
// ÁֱⰡ ´Ù µÈ ½ÅÈ£ À̵¿ ¹× Á¦°Å ó¸®
for (i = 0; i < MAX; i++) {
if (S[i].exist == FALSE)
continue;
if (--S[i].nStay == 0) {
S[i].nStay = S[i].nFrame;
gotoxy(S[i].x, S[i].y); putch(' ');
if (++S[i].y < S[i].distance) {
gotoxy(S[i].x, S[i].y); putch(S[i].ch);
}
else {
S[i].exist = FALSE;
}
}
}
Sleep(1000 / frame);
}
}
}
void gotoxy(int x, int y)
{
COORD Pos = { x - 1, y - 1 };
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}
|
Hit : 7489 Date : 2014/02/15 05:35
|