博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通用的启动参数获取getopt
阅读量:6489 次
发布时间:2019-06-24

本文共 1513 字,大约阅读时间需要 5 分钟。

一个比较简单的getopt,多平台通用

#include "stdio.h"char * host=0;int port=0;int is_show_help=0;#define true 1#define false 0typedef int bool;bool getoption(int argc,char ** argv){    char * p=0;    for(int i=1;i
%s\n",argv[i-1]); return false; } while(*p) { switch(*p++) { case '?':{ //printf("-h"); is_show_help=1; break; } case 'h':{ if (argv[++i]){ //printf("param -h=%s\n",argv[i]); host=argv[i]; } break; } case 'p':{ if (argv[++i]){ /* printf("param -p=%d\n",atoi(argv[i])); */ port = atoi(argv[i]); } break; } default:{ break; } } } } return true;}int main(int argc,char ** argv){ if (! getoption(argc,argv) ) { printf("param error\n"); return 1; } if (is_show_help){ printf("help!!!!!!!help me!\n"); return 0; } if (host!='\0'){ printf("host is -> %s \n",host); } if (port != 0){ printf("port is -> %d \n",port); }}

clipboard.png

转载地址:http://ryouo.baihongyu.com/

你可能感兴趣的文章
[MySQL 学习] Innodb锁系统(1)之如何阅读死锁日志
查看>>
[LeetCode] Game of Life
查看>>
iOS设计模式 - 组合
查看>>
从AdventureWorks学习数据库建模——国际化
查看>>
CUDA C 编程指导(二):CUDA编程模型详解
查看>>
讨喜的隔离可变性(十)使用Transactor
查看>>
手把手玩转win8开发系列课程(28)
查看>>
重温SQL——行转列,列转行
查看>>
【SQL 学习】排序问题之order by与索引排序
查看>>
设置mysql最大连接数的方法
查看>>
Android UI组件----自定义ListView实现动态刷新
查看>>
Redis 数据库结构
查看>>
【C/C++学院】0813-C与CPP不同以及命名空间简介/函数重载与函数默认参数/泛型auto/Newdelete...
查看>>
Apache MINA (2) Hello World!
查看>>
阿里云服务器CentOS5.8安装WAS6.1
查看>>
【黑马Android】(03)学生管理系统/动态刷新界面
查看>>
DP的学习
查看>>
单链表
查看>>
Codeforces Round #311 (Div. 2) A. Ilya and Diplomas
查看>>
【springmvc+mybatis项目实战】杰信商贸-20.合同货物数和附件数
查看>>