- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux系统编程习题精选.doc
Linux系统编程第一天:
#include stdio.h
#include stdlib.h
#include time.h
函数原型:
FILE *fopen(const char *path,const char *mode);
int fclose(FILE *fp);
int fgetc(FILE *stream);
int fputc(int c,FILE *stream);
void rewind(FILE *stream);
long ftell(FILE *fp); //返回位置指针的当前位置
int fseek(FILE *fp,long offset,int whence); //移动文件流的读写位置
1、在工作目录下用VIM创建一个文本文件(*.txt格式,名字任意)。在文本文件中随便写入一些内容。然后试编写如下功能的程序:读取刚才创建的文本文件的内容,并将其在屏幕上输出。(提示:使fopen函数以读的方式打开文件,用fgetc读取字符,用putchar输出)
2、从键盘上输入一行字符,写入一个文件,再把该文件内容读出显示在屏上。
3、试编程实现这样一个程序,假设程序编译完之后生成名字为mycopy。当我在命令行上输入这样的命令mycopy source target(回车),表示我要将磁盘上的source文件中内容copy到target中(前提 source文件存在,里面有内容)
4、编程读写一个文件test.txt,每隔一秒向文件中写入一行,类似这样:
1,2008-4-01 12:01:05
2,2008-4-01 12:01:06
下次再启动程序写文件时可以追加到原文件之后,并且序号能后接续上次的序号。如:
1,2008-4-01 12:01:05
2,2008-4-01 12:01:06
3,2008-4-01 12:08:15
4,2008-4-01 12:08:16
5,2008-4-01 12:08:17
6,2008-4-01 12:08:18
提示:
1、要追加写入文件,同时要读取该文件的内容以决定下一个序号是多少,应该用什么模式打开?
2、可以用feof函数判断一下打开的文件是否为新文件,如果是新文件,就从序号1开始写入;如果不是新文件,则统计原来由多少行,如有n行,就从序号n+1开始写入。
3、获取当前系统时间要调用函数time(),得到的结果是一个time_t类型,其实就是一个大整数,其时间表示从1970年1月1日00:00:00到当前时刻的秒数,然后调用localtime()将time_t所表示的时间转换为本地时间(我们是东八区,比这个时间要多八个小时)并转换成struct tm类型,该类型的各数据成员分别表示年月日时分秒。
4、调用sleep(n)可以使程序睡眠n秒。
5、struct tm
{
int tm_sec; //当前的秒数(0~59)
int tm_min; //当前分钟数(0~59)
int tm_hour; //当前小时数(0~23)
int tm_mday; //当前月份的天数(1~31)
int tm_mon; //当前月份(0~11)
int tm_year; //从1900年算起来到现在的年份
int tm_wday; //一星期中的天数,从周日算起(0~6).
int tm_yday; //从今年1月1日算起至今的天数(0~365).
int tm_isdst; //返回的时间未经时区转换。
};
6、struct tm *localtime(const time_t *timep);
Linux系统编程第二天:
1、设计一个实现PWD功能的程序:
pwd:
显示当前工作路径之绝对路径名称。
如:
pwd
/home/hbuser
需要的函数及数据结构:
chdir(const char *path);//改变当前工作路径
DIR;
struct dirent{
ino_t d_ino;
off_t d_off;
unsigned short d_reclen;
unsigned char d_type;
char d_name[256];
};
DIR *opendir(char *path);
struct dirent *readdir(DIR *dir);
int stat(const char *path,struct stat *buf);
以上函数的使用,参照《linux C函数库参考手册》,注意readdir的用法。
思路提示:
每个目录对应一个inode,readdir会读取其参数所指定目录下所有成员(目录或文件)的信息,并存储在struct dirent结构体中,其中s
您可能关注的文档
- Design and Performance Evaluation of an Ultradeepwater Subsea Blowout Preventer Control System Using Shape Memory Alloy Actuators.doc
- Design of Multifunction Taximeter Based on Single Chip Microcomputer.doc
- Design of the Query Parser Module (.NET).doc
- Design of the SDMXML Data Generator Module (.NET).doc
- Design of the Web Service Provider Module (.NET).doc
- DeterminationofForwardandFuturesPrices.doc
- Development of inorganic chemistry in China.doc
- Development of the bladder.doc
- DevelopmentoftheSelfandSocialCognition.ppt
- DIY 手把手教你将液晶显示器改造为壁挂电视.doc
- 2025年货损理赔电子化转型可行性报告.docx
- 解析卷-苏科版九年级物理上册《机械能和内能》专项训练试卷(解析版含答案).docx
- 中秋佳节团圆演讲稿PPT.pptx
- 吉林省吉林市丰满区第五十五中学2026届数学高二上期末学业质量监测模拟试题含解析.doc
- 解析卷-苏科版九年级物理上册《机械能和内能》专项练习试题(含答案解析).docx
- 农民合作社课件.pptx
- 解析卷-苏科版九年级物理上册《机械能和内能》专项练习试卷(含答案详解).docx
- 解析卷-苏科版九年级物理上册《机械能和内能》专项练习试题(含答案及解析).docx
- 解析卷-苏科版九年级物理上册《机械能和内能》专项练习练习题(含答案详解).docx
- 解析卷-苏科版九年级物理上册《机械能和内能》专项测试试题(含解析).docx
文档评论(0)