// 定义本函数局部变量
int iResult = 0; // 本函数返回值变量
int iShortName = 0; // 取得命令行中的(单个字符的)短选项名
char **szTmpargv = (char**)argv; // 临时指向参数字符串数组
/// 1. 定义保存选项参数值的变量
int iHelpFlag = 0; // 是否是帮助功能选项
char *szIPadr = NULL; // IP地址字符串指针
unsigned short nPort = 0; // 网络端口号
/// 2. 自定义选项描述列表
poptOption optionsTable[] = {{ "help", // 字符串形式的选项名
'h', // 单个字符形式的选项名
POPT_ARG_NONE, // 选项无参数类型,
// 命令行存在这个选项,
// 则下面指针指向的整形变量为非零值
&iHelpFlag, // 字符指针(char*)的指针
0, // 一般没有什么用,
// 但如果使用POPT_ARG_CALLBACK,
// 则它在回调函数中是有用的。
// 如果不想用它,把它设置为0。
"Show this help message", // 用于对 --help 选项自动生成输出信息,
// 用于描述选项
NULL }, // 用于对 --help 选项自动生成输出信息,
// 描述选项的参数
{ "IPAddress", // 字符串形式的选项名
'a', // 单个字符形式的选项名
POPT_ARG_STRING, // 选项参数字符串类型
&szIPadr, // 字符指针(char*)的指针
0, // 一般没有什么用,
// 但如果使用POPT_ARG_CALLBACK,
// 则它在回调函数中是有用的。
// 如果不想用它,把它设置为0。 "Set IP address of DVR", // 用于对 --help 选项自动生成输出信息,
// 用于描述选项
"For example: 192.168.6.18" }, // 用于对 --help 选项自动生成输出信息,
// 描述选项的参数
{ "Port", // 字符串形式的选项名
'p', // 单个字符形式的选项名