C code ¿¡¼ÀÇ »ç¿ë¹ýÀ» »ìÆìº»´Ù.
¿¹Á¦ ÇÁ·Î±×·¥À¸·Î Hello.c ¶ó´Â C code ¸¦ ÀÛ¼ºÇÑ´Ù. ÀÌ ÇÁ·Î±×·¥Àº Greeting, Hello, World ¶ó°í Ãâ·ÂÀ» Çϴµ¥ °¢°¢ÀÇ message µéÀ» gettext ¸¦ ÀÌ¿ëÇÏ¿© »ç¿ëÀÚ locale ¿¡ µû¶ó Ãâ·ÂÅä·Ï ÇÑ´Ù.
#include <libintl.h> #include <locale.h> #include <stdio.h> int main(void) { /* ÇöÀç È£½ºÆ®ÀÇ locale À» »ç¿ëÇÑ´Ù. */ setlocale(LC_ALL,""); /* Hello ÀÇ message table À» /usr/local/share/locale ¾Æ·¡¿¡¼ ãµµ·Ï ÇÑ´Ù. */ bindtextdomain("Hello", "/usr/local/share/locale"); textdomain("Hello"); printf("origin message : %s\n", "Greeting"); printf("gettext trans : %s\n", gettext("Greeting")); printf("origin message : %s\n", "Hello"); printf("gettext trans : %s\n", gettext("Hello")); printf("origin message : %s\n", "World!"); printf("gettext trans : %s\n", gettext("World!")); return 0; } |
string À» gettext ·Î µÑ·¯½Î°Ô µÇ¸é µÑ·¯½ÎÀÎ message °¡ ÇØ´ç locale¿¡ ÇØ´çÇÏ´Â message table À» ÂüÁ¶ÇÏ¿© Ãâ·ÂÇÏ°Ô µÈ´Ù. ¿©±â¼ ÂüÁ¶ÇÒ message table À» ÇÁ·Î±×·¥¿¡ ¿¬°á½Ã۱â À§Çؼ bindtextdomain À» »ç¿ëÇÏ¿´´Ù. À§ ¿¹Á¦¿¡¼´Â À§ Äڵ带 Hello ¶ó´Â À̸§À¸·Î ºôµåÇϰí, ÀÌÀÇ message table Àº /usr/local/share/locale ¾Æ·¡¿¡¼ textdomain ¿¡¼ ÁöÁ¤ÇÑ Hello ÇÁ·Î±×·¥ÀÇ message table À» ÂüÁ¶Çϵµ·Ï ÇѰÍÀÌ´Ù.
¸¸¾à ÇØ´çÇÏ´Â mesage table ÀÌ ¾ø°Å³ª Á¤ÀÇµÈ °ªÀÌ ¾øÀ» °æ¿ì¿¡´Â º¯È¯¾øÀÌ ¿ø·¡ messgae°¡ Ãâ·ÂµÈ´Ù.