linux界面操作程序
来源:互联网 发布:蜂鸟网络 深圳 编辑:程序博客网 时间:2024/06/05 03:55
#define FLAG_TA (1<<0)
#define FLAG_TC (1<<1)
#define FLAG_REMAIN (1<<2)
#define FLAG_LINK (1<<4)
#define FLAG_TERM (1<<8)
#define FLAG_HELP (1<<16)
struct opt {
unsigned int flags;
uint64_t termsign;
};
struct opt opt;
int parse_cmd_line(int argc, char *const argv[])
{
int option;
const char *optstring = "acrlht:?";
struct option longopts[] = {
{"ta", no_argument, NULL, 'a'},
{"tc", no_argument, NULL, 'c'},
{"remain", no_argument, NULL, 'r'},
{"link", no_argument, NULL, 'l'},
{"term", required_argument, NULL, 't'},
{0, 0, 0, 0}
};
while ((option =
getopt_long(argc, argv, optstring, longopts, NULL)) != -1)
switch (option) {
case 'a':
opt.flags |= FLAG_TA;
break;
case 'c':
opt.flags |= FLAG_TC;
break;
case 'r':
opt.flags |= FLAG_REMAIN;
break;
break;
case 'l':
opt.flags |= FLAG_LINK;
break;
case 't':
opt.flags |= FLAG_TERM;
printf("termsign %s \n",optarg);
sscanf(optarg,"%llu",&opt.termsign);
// opt.termsign =(uint64_t)_atoi64( optarg);
printf("termsign %llu \n",opt.termsign);
break;
case '?':
opt.flags |= FLAG_HELP;
return -1;
}
if ((opt.flags & FLAG_TERM) && (!opt.termsign )) {
return -1;
}
return 0;
}
void print_help(void)
{
static const char *help =
"Usage: getopt_long [OPTIONS]\n"
"Options are:\n"
" -a, --ta optional ta \n"
" -c, --tc optional tc \n"
" -r, --remain optional remain \n"
" -l, --link optional link \n"
" -t, --termsign must input termsign \n"
" -h, --help Display this help text and exit\n";
printf("%s", help);
}
int main(int argc, char **argv)
{
indexpeek ci;
uint64_t termsign;
opt.termsign=0;
if(ci.init("./ciconf.ini") != 0)
{
return -1;
}
char par[128] = "";
if (argc < 2)
{
print_help();
exit(0);
}
opt.flags = 0;
if (parse_cmd_line(argc, argv) < 0)
{
// parse command line.
exit(-1);
}
if (opt.flags & FLAG_HELP)
{
// get 'help' .
print_help();
exit(0);
}
if (opt.flags & FLAG_TERM)
{
termsign=opt.termsign;
}
else
{
print_help();
exit(0);
}
if (opt.flags & FLAG_TA)
{
ci.peekTA(termsign );
printf("ta peek over\n");
}
if (opt.flags & FLAG_TC)
{
ci.peekTC(termsign );
printf("tc peek over\n");
}
if (opt.flags & FLAG_LINK)
{
ci.peekLINK(termsign );
printf("link peek over\n");
}
if (opt.flags & FLAG_REMAIN)
{
ci.peekREMAIN(termsign );
printf("remain peek over\n");
}
printf("all succeed\n");
return 0;
}
- linux界面操作程序
- Linux字符界面操作
- Linux操作界面的转换
- windows mobile 5.0 程序界面操作添加
- Linux-Qt - 程序界面大小自适应屏幕分辨率
- linux text 进入图形操作界面
- Linux字符界面操作总结01
- 第四章 , Linux 字符界面操作
- Linux系统结构及其操作界面
- Linux 打开 Xbrowser 可视化操作界面
- Linux字符界面下的鼠标操作
- linux命令界面入门级操作
- Linux学习之字符界面操作
- Linux 文件格式及操作程序
- MFC之对话框程序界面控件提示信息操作CToolTipCtrl
- iOS实现程序长时间未操作回到登录界面
- linux学习笔记(二)--linux字符界面操作基础
- Linux下如何利用QtCreator下创建一个界面程序
- Android FrameWork——ActivityManager框架
- SAP ABAP STOP,EXIT,CHECK,RETURN
- Intent 用法
- 栈和堆存储学习总结
- 电子工程师必备基础知识
- linux界面操作程序
- [doubango Programmer's Guide] 10 Sockets and Network Functions(tinyNET) 翻译
- Android FrameWork——PackageManager框架
- jQuery中text()与 val() htm()的区别 小结
- scp命令详解,linux两台机器ssh无密码连接
- Hibernate关系映射 --- 一对一实例分析(双向关联,是基于主键的)
- CFileDialog过滤的用法
- 告诉你如何学C#
- Android调用WebService之服务端实现(一)