make -k ,lsof及系统接口strtol

1.make加参数-k,作用是编译过程中出错后不会退出而是继续 keepgoing

2.lsof(list open files)是一个列出当前系统打开文件的工具。(在linux环境下,任何事物都以文件的形式存在)

常用参数

-a 列出打开文件存在的进程

-c<进程名> 列出指定进程所打开的文件

-d<文件号> 列出占用该文件号的进程

+d<目录> 列出目录下被打开的文件

+D<目录> 递归列出目录下被打开的文件

-i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip )

3.long int strtol(const char *nptr, char **endptr, int base);

说明,第一个参数 nptr是要转化的字符串。第二个参数是分割后的非数字字符串;第三个参数base说明nptr的进制。base 取值范围 0,2-36

这几个函数会忽略nptr前面的空格( ' ', ' ', ' ' 'f', 'v' ' ' ,由isspace判定为真的字符)

while (*nptr && isspace ( *nptr ) ) ++ nptr;

例子,

1.

char *endptr;

char npstr[]="123abc";

int ret = strtol(npstr, &endptr, 10 );

由于10进制里没有“数字”a,所以扫描到a,结束。

这样 ret = 123;

endptr = &nptr[3]; ( printf("%s", endptr);将得到字符串 abc )

原文地址:https://www.cnblogs.com/wangshaowei/p/12122282.html