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°¡ Ãâ·ÂµÈ´Ù.