张尧学计算机操作系统第五版代码p34

#include//标准输入输出头文件 常见的有printf、scanf,fopen(用于打开文件并返回一个文件指针)、fread(用于从文件中读取数据) 
#incliude//该文件包含了与浮点环境相关的函数和宏定义
#include//该头文件包含了用于获取和操作文件信息的函数
//例如检查文件是否存在、获取文件大小、修改文件时间等。通过包含这个头文件,你可以在代码中使用这些函数来处理文件的状态和属性。
#define SIZE 1
void filecopy(char*infile,char*outfile){//这是一个名为`filecopy`的函数定义,接受两个字符指针类型的参数,分别表示输入文件和输出文件的名称。
    char Buffer[SIZE];
    int in_fh,out_fh,Count;
    if((in_fh=open(infile,O_RDONLY))==-1)//尝试以只读模式(`O_RDONLY`)打开输入文件,如果打开失败
    printf("Opening infile");
        if( ( out_fh=open( outfile, (O_WRONLY|OCREAT|O_TRUNC) ,  (S_IRUSR|S_IWUSR) )==-1 ) )
        //这段代码尝试以写入模式(`O_WRONLY`)创建并截断输出文件(`OCREAT|O_TRUNC`),并设置文件的用户读和写权限(`S_IRUSR|S_IWUSR`)。
        //如果打开失败,会输出`Opening outfile`。
        printf("Opening outfile");
        while( ( count=read( in_fh,Buffer,sizeof(Buffer) ) )>0 )//这段代码进入一个循环,每次读取`SIZE`个字符到`Buffer`中,然后尝试将这些字符写入输出文件。
        if(write(out_fh,Buffer,count)!=count)//如果写入的字符数与读取的字符数不相等,会输出`Writing data`。
            printf("Writing data");
        if(count==-1)
        printf("reading data");
        close(in_fh);//关闭输入文件 
        close(out_fh);//关闭输出文件 
}
/*此代码不完整不可运行*/ 

你可能感兴趣的:(c语言,linux,数据结构)