<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<STYLE>
BLOCKQUOTE {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 2em
}
OL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
UL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
BODY {
        LINE-HEIGHT: 1.5; FONT-FAMILY: ΢ÈíÑźÚ; COLOR: #000000; FONT-SIZE: 10.5pt
}
</STYLE>
<META name=GENERATOR content="MSHTML 8.00.7600.17267"></HEAD>
<BODY style="MARGIN: 10px">
<DIV>
<DIV>"setprogname can maximum program's portability." What do you mean by
this?</DIV>
<DIV>If the program is invoked directly, the process name will be argv[0],
even if not, why necessary to do set_program_name (argv[0]) ?</DIV>
<DIV>why it is necessary to invoke "bindtextdomain (PACKAGE, LOCALEDIR);"
and "textdomain (PACKAGE);" ?</DIV></DIV>
<DIV> </DIV>
<HR style="WIDTH: 210px; HEIGHT: 1px" align=left color=#b5c4df SIZE=1>
<DIV><SPAN>
<DIV style="FONT-FAMILY: verdana; FONT-SIZE: 10pt">
<DIV>
<DIV>
<DIV>
<DIV>Sincerely,</DIV>
<DIV>Xiang Xu (徐祥) </DIV>
<DIV>Student ID: 10388813</DIV>
<DIV>tel: +1 (201) 918-0570</DIV>
<DIV> +86 13851478402</DIV>
<DIV>qq: 185904095</DIV></DIV></DIV></DIV></DIV></SPAN></DIV>
<DIV> </DIV>
<DIV
style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<DIV
style="PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; FONT-FAMILY: tahoma; BACKGROUND: #efefef; COLOR: #000000; FONT-SIZE: 12px; PADDING-TOP: 8px">
<DIV><B>From:</B> <A href="mailto:zding4@stevens.edu">zding4</A></DIV>
<DIV><B>Date:</B> 2014-09-16 22:40</DIV>
<DIV><B>To:</B> <A
href="mailto:cs631apue@lists.stevens.edu">cs631apue</A></DIV>
<DIV><B>Subject:</B> Re: [cs631apue] starting functions in GNU Linux
mian()</DIV></DIV></DIV>
<DIV>
<DIV>setprogname can maximum program's portability.</DIV>
<DIV>But GNU use macro to define the program name.</DIV>
<DIV> </DIV>
<DIV>在 09/16/2014 10:30 PM,cpunjabi 写道:</DIV>
<DIV>> argv[0] always contains the name of the program. i.e if you run</DIV>
<DIV>> welcome.c program, argv[0] contains "welcome". I think setlocale
is</DIV>
<DIV>> used for internationalization, LC_ALL specifies the locale for
all</DIV>
<DIV>> purposes and By setting the locale to "", we are implicitly
assigning</DIV>
<DIV>> the locale to the user's defined locale.</DIV>
<DIV>> </DIV>
<DIV>> On 2014-09-16 22:15, xxu15@stevens.edu wrote:</DIV>
<DIV>>> </DIV>
<DIV>>> Hi,</DIV>
<DIV>>> I found that in many GNU Linux c files, at the begining of the
main()</DIV>
<DIV>>> function, there are such functions being invoked as below:</DIV>
<DIV>>> </DIV>
<DIV>>> initialize_main (&argc, &argv);</DIV>
<DIV>>> set_program_name (argv[0]);</DIV>
<DIV>>> setlocale (LC_ALL, "");</DIV>
<DIV>>> </DIV>
<DIV>>> bindtextdomain (PACKAGE, LOCALEDIR);</DIV>
<DIV>>> </DIV>
<DIV>(PACKAGE);</DIV>
<DIV>>> </DIV>
<DIV>>> Has any body figured out what they are used for ?</DIV>
<DIV>>> </DIV>
<DIV>>> -------------------------</DIV>
<DIV>>> </DIV>
<DIV>>> Sincerely,</DIV>
<DIV>>> Xiang Xu (徐祥)</DIV>
<DIV>>> Student ID: 10388813</DIV>
<DIV>>> tel: +1 (201) 918-0570</DIV>
<DIV>>> +86 13851478402</DIV>
<DIV>>> qq: 185904095</DIV>
<DIV>>> _______________________________________________</DIV>
<DIV>>> cs631apue mailing list</DIV>
<DIV>>> cs631apue@lists.stevens.edu</DIV>
<DIV>>> https://lists.stevens.edu/mailman/listinfo/cs631apue</DIV>
<DIV>> _______________________________________________</DIV>
<DIV>> cs631apue mailing list</DIV>
<DIV>> cs631apue@lists.stevens.edu</DIV>
<DIV>> https://lists.stevens.edu/mailman/listinfo/cs631apue</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>_______________________________________________</DIV>
<DIV>cs631apue mailing list</DIV>
<DIV>cs631apue@lists.stevens.edu</DIV>
<DIV>https://lists.stevens.edu/mailman/listinfo/cs631apue</DIV></DIV></BODY></HTML>