• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 100,  comments - 15,  trackbacks - 0
             int     main(   int   argc   ,   char   *argv[]   ,   char   *envp[]   )  
              main()函數(shù)一般用int或者void形的。我比較喜歡用int型定義main。因?yàn)樵诮Y(jié)束的時(shí)候可以返回給操作系統(tǒng)一個(gè)值以表示執(zhí)行情況。  
               
              int   argc  
              這個(gè)東東用來(lái)表示你在命令行下輸入命令的時(shí)候,一共有多少個(gè)參數(shù)。比方說(shuō)你的程序編譯后,可執(zhí)行文件是test.exe  
              D:\tc2>test  
              這個(gè)時(shí)候,argc的值是1  
              但是  
              D:\tc2>test.exe   myarg1   myarg2  
              的話,argc的值是3。也就是   命令名   加上兩個(gè)參數(shù),一共三個(gè)參數(shù)  
               
              char   *argv[]  
              這個(gè)東東用來(lái)取得你所輸入的參數(shù)  
              D:\tc2>test  
              這個(gè)時(shí)候,argc的值是1,argv[0]的值是   "test"  
              D:\tc2>test   myarg1   myarg2  
              這個(gè)時(shí)候,argc的值是3,argc[0]的值是"test",argc[1]的值是"myarg1",argc[2]的值是"myarg2"。  
              這個(gè)東東一般用來(lái)為程序提供非常重要的信息,如:數(shù)據(jù)文件名,等等。  
              如:copy   a.c   b.txt  
              這個(gè)時(shí)候,a.c和b.txt就是所謂的“非常重要的信息”。不指定這兩個(gè)文件,你沒(méi)法進(jìn)行拷貝。  
              當(dāng)你的程序用到argc和argv這兩個(gè)參數(shù)的時(shí)候,可以簡(jiǎn)單地通過(guò)判斷argc的值,來(lái)看看程序的參數(shù)是否符合要求  
               
              char   *envp[]  
              這個(gè)東東相對(duì)來(lái)說(shuō)用得比較少。它是用來(lái)取得系統(tǒng)的環(huán)境變量的。  
              如:在DOS下,有一個(gè)PATH變量。當(dāng)你在DOS提示符下輸入一個(gè)命令(當(dāng)然,這個(gè)命令不是dir一類(lèi)的內(nèi)部命令)的時(shí)候,DOS會(huì)首先在當(dāng)前目錄下找這個(gè)命令的執(zhí)行文件。如果找不到,則到PATH定義的路徑下去找,找到則執(zhí)行,找不到返回Bad   command   or   file   name  
              在DOS命令提示符下鍵入set可查看系統(tǒng)的環(huán)境變量  
              同樣,在UNIX或者LINUX下,也有系統(tǒng)環(huán)境變量,而且用得比DOS要多。如常用的$PATH,$USER,$HOME等等。  
              envp保存所有的環(huán)境變量。其格式為(UNIX下)  
              PATH=/usr/bin;/local/bin;  
              HOME=/home/shuui  
              即:  
              環(huán)境變量名=值  
              DOS下大概也一樣。  
              環(huán)境變量一般用來(lái)為程序提供附加信息。如,你做了一個(gè)顯示文本的內(nèi)容的程序。你想控制其一行中顯示的字符的個(gè)數(shù)。你可以自己定義一個(gè)環(huán)境變量(UNIX下)  
              %setenv   NUMBER   =   10  
              %echo   $NUMBER  
              10  
              然后你可以在程序中讀入這個(gè)環(huán)境變量。然后根據(jù)其值決定一行輸出多少個(gè)字符。這樣,如果你不修改環(huán)境變量的話,你每次執(zhí)行這個(gè)程序,一行中顯示的字符數(shù)都是不一樣的  
              下面是一個(gè)例子程序  
               
              /* argtest.c */  
              #include<stdio.h>  
              int main(   int   argc   ,   char   *argv[]   ,   char   *envp[]   )  
              {  
              int   i;  
               
              printf(   "You   have   inputed   total   %d   argments\n"   ,   argc   );  
              for(   i=0   ;   i<argc   ;   i++)  
              {  
              printf(   "arg%d   :   %s\n"   ,   i   ,   argv[i]   );  
              }  
               
              printf(   "The   follow   is   envp   :\n"   );  
              for(   i=0   ;   *envp[i]!='\0'   ;   i++   )  
              {  
              printf(   "%s\n"   ,   envp[i]   );  
              }  
              return   0;  
              }  
               
               
              D:\>argtest   this   is   a   test   programe   of   main()'s   argments  
              You   have   inputed   total   9   argments  
              arg0   :   D:\TC\NONAME.EXE  
              arg1   :   this  
              arg2   :   is  
              arg3   :   a  
              arg4   :   test  
              arg5   :   programe  
              arg6   :   of  
              arg7   :   main()'s  
              arg8   :   argments  
              The   follow   is   envp   :  
              TMP=C:\WINDOWS\TEMP  
              TEMP=C:\WINDOWS\TEMP  
              PROMPT=$p$g  
              winbootdir=C:\WINDOWS  
              PATH=C:\WINDOWS;C:\WINDOWS\COMMAND  
              COMSPEC=C:\WINDOWS\COMMAND.COM  
              SBPCI=C:\SBPCI  
              windir=C:\WINDOWS  
              BLASTER=A220   I7   D1   H7   P330   T6  
              CMDLINE=noname   this   is   a   test   programe   of   main()'s   argments    
            posted on 2009-10-03 21:44 wyiu 閱讀(211) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            国产精品午夜久久| 无码国内精品久久综合88| 国产精品久久久久…| 久久精品成人免费网站| 伊人色综合久久| 久久精品亚洲AV久久久无码| 奇米影视7777久久精品| 日本三级久久网| 少妇人妻88久久中文字幕| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 精品久久久中文字幕人妻| 免费无码国产欧美久久18| 国产精品女同久久久久电影院 | 久久精品中文闷骚内射| 狠狠久久综合伊人不卡| 久久精品国产清高在天天线| 美女久久久久久| 久久精品国产91久久综合麻豆自制 | 欧美激情精品久久久久久| 久久久噜噜噜久久熟女AA片 | 久久人人爽人人爽人人片AV高清| 99久久国语露脸精品国产| 中文字幕精品久久| 国产一区二区三精品久久久无广告| 中文无码久久精品| 一本久久综合亚洲鲁鲁五月天| 亚洲天堂久久精品| 99久久777色| 国产精品久久久久久久久| 新狼窝色AV性久久久久久| 久久精品极品盛宴观看| 亚洲&#228;v永久无码精品天堂久久 | 久久精品亚洲男人的天堂| 久久―日本道色综合久久| 国产欧美久久久精品| 久久人人爽爽爽人久久久| 18岁日韩内射颜射午夜久久成人 | 精品国产乱码久久久久久1区2区 | 久久精品国产亚洲AV蜜臀色欲 | 亚洲综合久久综合激情久久| 成人妇女免费播放久久久|