´ÙÀ½ ÀÌÀü Â÷·Ê

11. À¯´ÏÄÚµå¿Í UTF-8À» À§ÇÑ CÀÇ Áö¿ø

GNU glibc 2.2ºÎÅÍ »ìÆìº¸¸é, ÇöÀç »ç¿ëÇÏ´Â ·ÎÄÉÀϰú »ó°ü¾øÀÌ, wchar_t ÇüÀº °ø½ÄÀûÀ¸·Î ¿ÀÁ÷ 32ºñÆ® ISO 10646 °ªÀ¸·Î »ç¿ëµÇ´Â °æÇâÀÌ ÀÖ´Ù. ISO C99¿¡¼­ ÇÊ¿ä·Î Çϱ⠶§¹®¿¡ __STDC_ISO_10646__ ¸ÅÅ©·Î Á¤ÀÇ¿¡ ÀÇÇØ¼­ ¾ÖÇø®ÄÉÀ̼ǿ¡ À̰ÍÀ» ½Ã±×³Î·Î º¸³½´Ù. ISO C ¸ÖƼ-¹ÙÀÌÆ® º¯È¯ ÇÔ¼öµé(wprintf(), mbstowcs() µî)Àº glibc 2.2 ȤÀº ±× À̻󿡼­ ¿Ïº®ÇÏ°Ô ±¸ÇöµÇ¸ç, UTF-8 °úÁ¤À» Æ÷ÇÔÇϸ鼭 wchar_t¿Í ·ÎÄÉÀÏ µ¶¸³ÀûÀÎ ¸ÖƼ¹ÙÀÌÆ® ÀÎÄÚµù »ç ÀÌ¿¡¼­ º¯È¯Çϱâ À§Çؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

¿¹¸¦ µé¸é ¾Æ·¡¿Í °°ÀÌ ¾µ ¼ö ÀÖ´Ù.

wprintf(L"Schone Gru©¬e!\n");

±×·± µÚ¿¡ ¼ÒÇÁÆ®¿þ¾î´Â ÀÌ·¯ÇÑ ÅØ½ºÆ®¸¦ »ç¿ëÀÚ°¡ ȯ°æ º¯¼ö LC_CTY PE(¿¹¸¦ µé¸é, en_US.UTF-8 ȤÀº de_DE.ISO_885 9-1)À¸·Î ¼±ÅÃÇÑ ·ÎÄÉÀÏ¿¡ ¸í½ÃµÈ ÀÎÄÚµù»ó¿¡ Ãâ·ÂÇÒ °ÍÀÌ´Ù. ÄÄÆÄ ÀÏ·¯´Â C ¼Ò½º ÆÄÀÏ¿¡¼­ »ç¿ëÇÏ´Â ÀÎÄÚµù¿¡ ÀûÇÕÇÑ ·ÎÄÉÀÏ¿¡¼­ µ¿ÀÛÇØ¾ß¸¸ ÇÑ´Ù. ±×¸®°í ³ª¸é À§ÀÇ ¹®ÀÚ¿­Àº À¯´ÏÄÚµå wchar_t ¹®ÀÚ¿­¿¡ ÀÇÇØ¼­ ¿Àºê Á§Æ® ÆÄÀÏ¿¡ Á¤È®ÇÏ°Ô ÀúÀåµÉ °ÍÀÌ´Ù. Ãâ·Â½Ã¿¡´Â ·±-ŸÀÓ ¶óÀ̺귯¸®°¡ wc har_t ¹®ÀÚ¿­À» ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ´Â ȯ°æÀÇ ·ÎÄÉÀÏ¿¡ ²À ¸Â´Â ÀÎÄÚµùÀ¸·Î ´Ù½Ã º¯È¯½Ãų °ÍÀÌ´Ù.


´ÙÀ½ ÀÌÀü Â÷·Ê