#include "setjmp.h"
jmp_buf jmpbuffer;
int setjmp(jmp_buf jmpbuffer);
void longjmp(jmp_buf jumpbuffer, int retval);
其中 jmpbuffer 是相关的程序栈的环境上下文。
初始化jmpbufferzhihou, setjmp第一次调用的时候会返回 0。
longjmp跳转到setjmp处,其中第二个参数retval就是传递给setjmp, 作为setjmp的返回值。但是需要主要的是,如果retval设置为0, 即这样调用的时候 longjmp(jumpbuffer, 0), setjmp会返回1。需要注意
#include "getopt.h"
一般用法
int opt = getopt(int argc, char** argv, char* pattern);
pattern可以为 abc:d:
表示 abcd四个选项。但是c、d选项必须有值
程序搜索命令行参数(寻找abcd四个选项相关,其中cd选项必须有值,才会正确返回cd字符。如果遇到无效的字符则跳过不管,如果遇到没有指定的选项,则返回‘?’,知道参数搜索完毕)
应该和自己写的应用程序一起应用并且加以判断。
阅读(878) | 评论(0) | 转发(0) |