当前位置:  技术问答>linux和unix

getopt函数的用法?

    来源: 互联网  发布时间:2015-11-06

    本文导语:  getopt函数怎么查找它的用法呢?最好教查找方法。man getopt不行,没什么有用信息。 | 表头文件:#i nclude  函数声明:int getopt(int argc, char * const argv[], const char *optstring); 函数说明:get...

getopt函数怎么查找它的用法呢?最好教查找方法。man getopt不行,没什么有用信息。

|
表头文件:#i nclude 

函数声明:int getopt(int argc, char * const argv[], const char *optstring);
函数说明:getopt()用来分析命令行参数。参数argc和argv是由main()传递的参数个数和内容。参数optstring 则代表欲处理的选项字符串。此函数会返回在argv 中下一个的选项字母,此字母会对应参数optstring 中的字母。如果选项字符串里的字母后接着冒号“:”,则表示还有相关的参数,全域变量optarg 即会指向此额外参数。如果getopt()找不到符合的参数则会印出错信息,并将全域变量optopt设为“?”字符,如果不希望getopt()印出错信息,则只要将全域变量opterr设为0即可。

返回值:如果找到符合的参数则返回此参数字母,如果参数不包含在参数optstring 的选项字母则返回“?”字符,分析结束则返回-1。
#include 
#include 
int main(int argc, char **argv)
{
    int ch;
    opterr = 0;
    while( ( ch = getopt( argc, argv, "s:b:c:p:" ) ) != EOF )
    {
        switch(ch)
        {
            case 's':
                printf("s opt: %sn", optarg);
                break;
            case 'b':
                printf("b opt: %sn", optarg);
                break;
            case 'c':
                printf("c opt: %sn", optarg);
                break;
            case 'p':
                printf("p opt: %sn", optarg);
                break;
            case '?':
                printf( "illegal option: %cn", ch );
                break;
        }       

    }
    return 0;
}



    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.swing类joptionpane的类成员方法: getoptions定义及介绍
  • 急,Linux shell脚本问题请教,关于getopts
  • java命名空间javax.security.auth.login类appconfigurationentry的类成员方法: getoptions定义及介绍
  • python getopt 参数处理小示例
  • java命名空间javax.security.auth.callback类confirmationcallback的类成员方法: getoptions定义及介绍
  • Python getopt模块处理命令行选项实例
  • java命名空间java.net接口socketoptions的类成员方法: getoption定义及介绍
  • 新手疑问:getopt_long()重入问题
  • java命名空间javax.annotation.processing接口processingenvironment的类成员方法: getoptions定义及介绍
  • sos 关于getopt
  • linux下的C程序getopt问题
  • linux系统中是否存在getopt.h?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3