linux系統(tǒng)IO練習
一:使用read、write實現(xiàn)cp功能
1.main函數(shù)傳參
2.代碼
二、計算一個文件的字母個數(shù)
準備一份普通txt,里面存放隨機數(shù)據(jù)(有漢字和字母)統(tǒng)計字母的個數(shù)!
#include?
#include?
#include?
#include?
#include?
#include?
//?計算英文字母的個數(shù)
int?Count_Letter(int?argc,char?*argv[]);
int?main(int?argc,char?*argv[])
{
Count_Letter(argc,argv);
return?0;
}
int?Count_Letter(int?argc?,?char?*argv[])
{
if(argc?!=?2?||?access(argv[1],F_OK)?)
{
perror("命令行??或者文件不存在");
return?-1;
}
char?array?=?'\0';
int?nume?=?0,nume_chinese=0,mask?=0;
int?open_fd?=?open(argv[1],O_RDONLY);
if(open_fd?==?-1)
{
perror("open");
return?-1;
}
while(?(read(open_fd,&array,1))?!=?0)
{
if((array?>=?'a'&&?array?
||?(array>=?'A'?&&?array?
{
nume++;
}
else?if((array?>=?0?&&?array?
||?(array>=91?&&?array?
||?(array>=123?&&?array?
{
array?=?'\0';
continue;
}
else
{
mask++;
if(mask%3==0)
{
nume_chinese++;
mask?=0;
}
}
bzero(&array,1);
}
printf("%s文件中的字母個數(shù)為:%d\n",argv[1],nume);
printf("%s文件中的中文字符(包含標點符號)個數(shù)為:%d\n",argv[1],nume_chinese);
return?0;
}