• <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>

            攀升·Uranus


            Something Different,Something New
            數(shù)據(jù)加載中……

            glibc: getopt()

            這個(gè)東西比較有用,
            以后可以用它來直接讀了。

            #include <unistd.h>
            #include <stdio.h>
            int main(int argc, char * argv[])
            {
                int aflag=0, bflag=0, cflag=0;
                int ch;
                while ((ch = getopt(argc, argv, "ab:c")) != -1)
                {
                    printf("optind: %d\n", optind);
                    switch (ch) {
                    case 'a':
                        printf("HAVE option: -a\n");
                        aflag = 1;
                        break;
                    case 'b':
                        printf("HAVE option: -b\n");
                        bflag = 1;
                        printf("The argument of -b is %s\n", optarg);
                        break;
                    case 'c':
                        printf("HAVE option: -c");
                        cflag = 1;
                        break;
                    case '?':
                        printf("Unknown option: %c\n",(char)optopt);
                        break;
                    }
                }
            }

            int getopt( int argc, char *const argv[], const char *optstring );

            給定了命令參數(shù)的數(shù)量 (argc)、指向這些參數(shù)的數(shù)組 (argv) 和選項(xiàng)字符串 (optstring) 后,getopt() 將返回第一個(gè)選項(xiàng),并設(shè)置一些全局變量。使用相同的參數(shù)再次調(diào)用該函數(shù)時(shí),它將返回下一個(gè)選項(xiàng),并設(shè)置相應(yīng)的全局變量。如果不再有識(shí)別到的選項(xiàng),將返回 -1,此任務(wù)就完成了。

            getopt() 所設(shè)置的全局變量包括:

            • optarg——指向當(dāng)前選項(xiàng)參數(shù)(如果有)的指針。
            • optind——再次調(diào)用 getopt() 時(shí)的下一個(gè) argv 指針的索引。
            • optopt——最后一個(gè)已知選項(xiàng)。

             ./getopt -a -d -b foo
            optind: 2
            HAVE option: -a
            ./getopt: invalid option -- d
            optind: 3
            Unknown option: d
            optind: 5
            HAVE option: -b
            The argument of -b is foo

            posted on 2009-07-17 14:29 攀升 閱讀(1485) 評論(1)  編輯 收藏 引用 所屬分類: Linux

            評論

            # re: glibc: getopt()[未登錄]  回復(fù)  更多評論   

            看著 頭暈~
            你呢?
            2009-07-28 12:38 | 胖胖
            久久精品国产一区二区三区不卡| 综合久久精品色| 93精91精品国产综合久久香蕉| 国产福利电影一区二区三区久久老子无码午夜伦不| 国产精品久久毛片完整版| 久久精品国产亚洲一区二区三区| 欧美色综合久久久久久| 69国产成人综合久久精品| 欧美激情精品久久久久久| 人妻精品久久久久中文字幕69 | 久久精品a亚洲国产v高清不卡| 97久久国产亚洲精品超碰热| 一个色综合久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 亚洲人成无码网站久久99热国产 | 狠狠色婷婷综合天天久久丁香 | 久久最新免费视频| 亚洲国产二区三区久久| 日韩精品无码久久久久久| 一级做a爰片久久毛片看看| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久久久久久亚洲Av无码| 久久久久婷婷| 亚洲狠狠综合久久| 99久久国产综合精品麻豆| 伊人色综合久久天天人手人婷 | 品成人欧美大片久久国产欧美| 久久人人爽人人爽人人片av高请 | 亚洲国产成人久久综合碰碰动漫3d | 久久精品青青草原伊人| 四虎久久影院| 伊人久久五月天| 一本久久知道综合久久| 日产精品99久久久久久| 久久久久久久久久久久中文字幕 | 久久亚洲高清观看| 久久综合九色综合久99| 久久久久久狠狠丁香| 国产精品成人99久久久久91gav| 精品国产热久久久福利| 久久久久一本毛久久久|