首页 > 代码库 > Unix/Linux编程实践教程(0:)
Unix/Linux编程实践教程(0:)
本来只打算读这本书socket等相关内容,但书写得实在好,还是决定把其余的内容都读一下。
阅读联机帮助的一个示例:
open系统调用:
read系统调用:
Unix的time:
上面的printf可以看到,一个临时的char* 指针也可以+4,希望查看ctime函数里面是否有malloc,如果有的话由谁来释放内存???没有的话为什么可以指针操作。
为解决上述疑惑,通过查看http://www.cplusplus.com/reference/ctime/ctime/以及及http://www.cplusplus.com/reference/ctime/asctime/,得到:
ctimechar* ctime (const time_t * timer);Convert time_t value to stringThis function is equivalent to: asctime(localtime(timer))asctimechar* asctime (const struct tm * timeptr);Convert tm structure to stringIt is defined with a behavior equivalent to:char* asctime(const struct tm *timeptr){ static const char wday_name[][4] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; static const char mon_name[][4] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; static char result[26]; sprintf(result, "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n", wday_name[timeptr->tm_wday], mon_name[timeptr->tm_mon], timeptr->tm_mday, timeptr->tm_hour, timeptr->tm_min, timeptr->tm_sec, 1900 + timeptr->tm_year); return result;}
疑惑解除了,可以看到ctime返回的是一个静态局部char数组。
系统调用lseek改变打开文件位置:
处理系统调用中的错误
确定错误种类errno。
显示错误信息perror:
ls -a选项列出隐藏文件:
如何编写ls:
stat获取文件属性信息:
其中stat的结构为:
将模式字段转换为字符
使用掩码得到文件类型:
Unix/Linux编程实践教程(0:)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。