篮球外围下注_篮球投注导航_[所有网址]

篮球外围下注_篮球投注导航_[所有网址]是该公司为打造信誉第一,2014最新体验金,篮球外围下注_篮球投注导航_[所有网址]这里的所有老虎机游戏及真人百家乐游戏都具有欧洲风格,致力成为最具传播力和互动性的娱乐城网站。

Linux下C语言的公文文件读写(fputc,fgetc,fwrite,fre

2019-08-02 13:47 来源:未知

C文件概述

1、所谓“文件”是指一组有关数据的不变聚焦。

2、那几个数目集结有七个称谓,叫做文件名

3、文件一般是驻留在外界介质(如磁盘等)上的,在利用时才调入内存中来

4、操作系统是以文件为单位对数码实行管制的

 

那一个函数基本皆有的来利用,比如 fputc 和 fgetc 一同来用

#include <stdio.h>
#include <stdlib.h>

C语言对文本的拍卖方法

缓冲文件系统:系统活动地在内部存款和储蓄器区为每壹个正在利用的文件开垦三个缓冲区。用缓冲文件系统实行的输入输出又称为高端磁盘输入输出。

非缓冲文件系统:系统不活动开拓明确大小的缓冲区,而由程序为各个文件设定缓冲区。用非缓冲文件系统进行的输入输出又叫做低等输入输出系统。

 


Linux下C语言的公文(fputc,fgetc,fwrite,fread对文件读写操作)

 

main()
{
  FILE *fp;
  char ch;

  if((fp1=fopen("test.txt","wb"))==NULL)
  {
    printf("不能够展开文件");
    exit(0);
  }
    printf("请输入音讯,姓名 年龄 分数1 分数2 地址:n");
  for( i=0;i<2;i )
  {
    scanf("%s %d %f %f %s",stu.name,&stu.age,&stu.score[0],&stu.score[1], stu.addr);
    fwrite(&stu,sizeof(stu),1,fp1);
  }

文件分类

1、从用户意见:

  a) 特俗文件(规范输入输出文件或标准配备文件)

  b) 普通文书(磁盘文件)

2、从操作系统的角度看,每种与主机相连的输入、输出设备看作是贰个文本

3、按数量的团体情势:

  a) ASCII文件(文本文件):每二个字节放三个ASCII代码

b) 二进制文件:把内部存款和储蓄器中的数据按其在内部存款和储蓄器中的存款和储蓄方式原样输出到磁盘上寄放

  fclose(fp);
}

  fclose(fp1);
}

文件的开发与关闭

1、文件的张开(fopen函数)

2、文件的倒闭(fclose函数)

函数功能:使文件指针变量不指向该公文,也正是文本指针变量与公事“脱钩”,此后不可能再通过该指针对原本与其相沟通的公文实行读写操作

返回值:闭馆成功重返值为0;不然再次来到EOF(-1)

 

行使文件的艺术共有12种,下边给出了它们的暗号和含义。

 文件使用方式

             意义

   “r”

   只读打开一个文本文件,只允许读数据

   “w”

   只写打开或建立一个文本文件,只允许写数据

   “a”

   追加打开一个文本文件,并在文件末尾写数据

   “rb”

   只读打开一个二进制文件,只允许读数据

   “wb”

   只写打开或建立一个二进制文件,只允许写数据

   “ab”

   追加打开一个二进制文件,并在文件末尾写数据

   “r ”

  读写打开一个文本文件,允许读和写

   “w ”

  读写打开或建立一个文本文件,允许读写

   “at ”

  读写打开一个文本文件,允许读,或在文件末追加数据

   “rb ”

  读写打开一个二进制文件,允许读和写

   “wb ”

  读写打开或建立一个二进制文件,允许读和写

   “ab ”

  读写打开一个二进制文件,允许读,或在文件末追加数据

 

 

文本结尾,通过判定 EOF

fprintf , fscanf, putw , getw , rewind , fseek 函数

文本的读写

字符读写函数: fgetc 和 fputc

1、在文件之中有二个职位指针,用来针对文件的此时此刻读写字节

2、在文书张开时,该指针总是指向文件的率先个字节,只用fgetc函数后,该职分指针将向后活动三个字节,由此可连接数次行使fgetc函数,读取多少个字符

3、文件指针和未见里面包车型地铁职位指针不是三次事

4、文件指针是指向全部文件的,须在程序中定义表明,只要不另行赋值,文件指针的值是不改变的

5、文件之中的岗位指针用以知识文件之中的当下读写地方,每读写三遍,该指针均向后运动,它没有要求在先后中定义表达,而是由系统自动安装的

 

fputc(ch, fp);

函数作用: 将字符(ch的值)输出到fp所指向的文本中去

 

/*

2011年09月21日21 :54:59 

功能:

字符读写函数: fgetc 和 fputc

fputc(ch, fp);

函数成效: 将字符(ch的值)输出到fp所指向的文件中去

*/

#include <stdio.h>

#include <stdlib.h>

 

void main()

{

FILE * fp;

char ch, filename[20];

 

printf("Please input the filename you want to write:");

scanf("%s", filename);

 

if(!(fp = fopen(filename, "wt "))) //  文件的张开(fopen函数);  “wt ” 读写张开或创制三个文书文件,允许读写

{

printf("Cannot open the file!n");

exit(0);//终止程序

}

 

printf("Please input the sentences you want to write:");

ch = getchar(); 

ch = getchar();

while( ch != EOF) //EOF为文件停止

{

fputc(ch, fp); //fputc(ch, fp); 函数作用: 将字符(ch的值)输出到fp所指向的文件中去

ch = getchar();

}

 

fclose(fp);

}

 

 

 

/*

2011年09月21日22 :23:29 

*/

#include <stdio.h>

#include <stdlib.h>

 

void main()

{

FILE * fp;

char ch, filename[20];

 

printf("Please input the filename you want to write:");

scanf("%s", filename);

 

if(!(fp = fopen(filename, "r"))) //  文件的开采(fopen函数);  “wt ” 读写展开或制造二个文本文件,允许读写

{

printf("Cannot open the file!n");

exit(0);//终止程序

}

 

while( ch != EOF) //EOF为文件停止 EOF 也就相当于于 -1 表示读到文件末尾了 也许说 是 文件的扫尾符

{

ch = fgetc(fp);

putchar(ch); //putchar();用于把ch呈现在荧屏上

}

 

fclose(fp);

}

 

 

/*

2011年09月25日13 :03:29 

功能:

成就文本文件的复制

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE *in, *out;

 

char infile[10];

char outfile[10];

char c;

 

printf("enter the infile name:n");

scanf("%s", infile);

 

printf("enter the outfile name:n");

scanf("%s", outfile);

 

if( (in=fopen(infile, "r")) == NULL ) //   “r” 只读展开贰个文书文件,只同意读数据

exit(0);

 

if( (out=fopen(outfile, "w")) == NULL ) //   “w” 只写张开或建设构造二个文件文件,只同意写多少

exit(0);

 

c=fgetc(in); //fgetc(), getc() 从钦命文件取得八个字符

while(!feof(in)) //文件状态 feof() 若到文件末尾,函数值为真

{

fputc(c, out); //fputc(), putc() 把字符输出到钦定文件

c=fgetc(in);

}

 

fclose(in);

fclose(out);

 

return 0;

}

 

 

/*

2011年09月25日13 :10:03 

功能:

做到二进制文件的复制

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE *in, *out;

 

char infile[10];

char outfile[10];

char c;

 

printf("enter the infile name:n");

scanf("%s", infile);

 

printf("enter the outfile name:n");

scanf("%s", outfile);

 

if( (in=fopen(infile, "rb")) == NULL ) //     “rb”    只读展开四个二进制文件,只同意读数据

exit(0);

 

if( (out=fopen(outfile, "wb")) == NULL ) //      “wb”    只写展开或确立二个二进制文件,只允许写多少

exit(0);

 

c=fgetc(in); //fgetc(), getc() 从钦命文件获得贰个字符

while(!feof(in)) //文件状态 feof() 若到文件末尾,函数值为真

{

fputc(c, out); //fputc(), putc() 把字符输出到内定文件

c=fgetc(in);

}

 

fclose(in);

fclose(out);

 

return 0;

}

 

字符串读写函数:fgets 和 fputs

1、只可以处理文件文件,不能够管理二进制文件

2、返回值:

1. 输入成功:重回值为0;

2. 输入战败:再次回到EOF;

 

例一:字符串写入:

/*

2011年09月22日21 :52:25 

 

字符串读写函数:fgets 和 fputs

返回值:

1. 输入成功:重返值为0;

2. 输入退步:重返EOF;

*/

 

#include <stdio.h>

#include <stdlib.h>

 

#define LEN 11;

 

void main()

{

FILE * fp;

 

char buffer[30], ch;

 

if( !(fp = fopen("qintangtao.txt", "at ")) ) //   “at ” 读写展开四个文书文件,允许读,或在文书末扩张数据 文件指针指向了文件的结尾处

{

printf("nCannot open file strike any key exit!");

exit(1);

}

 

printf("Please input a string:n");

// scanf("%s", buffer);  // 用scanf();接收时 当遭遇 空格、换行 就感到停止了

 

fgets(buffer, 30, stdin); //为何不用scanf()? stdin又是怎样?

 

fputs(buffer, fp);

 

rewind(fp); //重新定义文件之中指针指向文件的发端处

 

ch = fgetc(fp);

 

while( ch != EOF )

{

putchar(ch); //输出到显示器上

ch = fgetc(fp);

}

 

printf("n");

 

fclose(fp);

 

system("pause");

}

 

例二:字符串读出

/*

2011年09月22日19 :40:44 

总结:

字符串读写函数:fgets 和 fputs

*/

 

#include <stdio.h>

#include <stdlib.h>

 

#define LEN 11;

 

void main()

{

FILE * fp;

 

char buffer[11];

 

if( !(fp = fopen("qintangtao.txt", "rt")) ) //是还是不是能够开荒文件

{

printf("nCannot open file strike any key exit!");

exit(1);

}

 

fgets(buffer, 11, fp); //从fp中读出12个字节寄放在buffer中

 

printf("%sn", buffer);

 

fclose(fp);

 

system("pause");

}

 

 

/*

2011年09月25日14 :05:49 

功能:

输入学生的消息存入student.txt文件中

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE * fp;

char student[50];

int i;

//scanf("%s", student); // 当输入 1001 tom 92.3  时 只好把1001存入文件中 因为在蒙受空格时 scanf就把它当成了结束的暗记 所以要用上面包车型大巴  gets(student); 来举办输入

 

if( (fp=fopen("student.txt", "w"))==NULL )

exit(0);

 

for(i=0; i<3; i )

{

gets(student);

fputs(student, fp); //整行的存入文件中

fputs("n", fp); //换行

}

 

return 0;

}

 

/*

2011年09月25日14 :17:13 

功能:

从student.txt文件中读取数据并出示在荧屏上

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE * fp;

 

char string[80];

 

if( (fp=fopen("student.txt", "r"))==NULL )

exit(0);

 

while( fgets(string, 80, fp)!=NULL )

{

//printf("%s", string); //也能够用上面包车型地铁章程将内容展现在荧屏上

fputs(string, stdout); //stdout函数是将内容呈现到荧屏上

}

 

 

return 0;

}

数据块(二进制文件的)读写函数:fread 和 fwrite

函数调用:

fread(buffer, size, count, fp);

fwrite(buffer, size, count, fp);

 

参数表明:

buffer: 是一个指针

对fread来讲,它是读入数据的寄放地点

对fwrite来讲,是要出口数据的地址(均指发轫地址)

size: 要读写的字节数

count:要实行读写几个size字节的数额项

fp:文件指针

 

例一:数据块写入:

/*

2011年09月22日23 :01:25 

总结:

函数调用:

fread(buffer, size, count, fp);

fwrite(buffer, size, count, fp);

 

参数表明:

buffer: 是三个指针

对fread来说,它是读入数据的存放地方

对fwrite来讲,是要出口数据的地点(均指初始地址)

size: 要读写的字节数

Count:要进行读写多少个size字节的数额项

fp:文件的指针

*/

 

#include <stdio.h>

 

#define SIZE 4

 

struct student

{

char name[10];

int num;

int age;

char addr[15];

}stu[SIZE];

 

void save()

{

FILE *fp;

int i;

 

if( !(fp = fopen("student-list", "wb")) ) // “wb” 只写张开或成立一个二进制文件,只允许写多少

{

printf("Cannot open the file!n");

return;

}

 

for( i=0; i<SIZE; i  )

{

if( fwrite(&stu[i], sizeof(struct student), 1, fp) !=1 )  //fwrite(buffer, size, count, fp);

{

printf("File write error!n");

fclose(fp);

}

}

}

 

 

 

void main()

{

int i;

 

printf("Please input the student's name, num, age and address: n");

for ( i=0; i<SIZE; i  )

{

scanf("%s %d %d %s", &stu[i].name, &stu[i].num, &stu[i].age, &stu[i].addr );

}

 

save();

}

 

例二:数据块读出:

/*

2011年09月22日23 :03:30 

总结:

函数调用:

fread(buffer, size, count, fp);

fwrite(buffer, size, count, fp);

 

参数表明:

buffer: 是二个指针

对fread来讲,它是读入数据的存放地方

对fwrite来说,是要出口数据的地方(均指早先地址)

size: 要读写的字节数

Count:要拓展读写多少个size字节的数量项

fp:文件的指针

*/

 

#include <stdio.h>

 

#define SIZE 4

 

struct student

{

char name[10];

int num;

int age;

char addr[15];

}stu[SIZE];

 

//函数申明

void load();

 

void main()

{

int i;

 

load();

printf("      name     num    age      adressnn");

for ( i=0; i<SIZE; i  )

{

printf("s ] ] s n", &stu[i].name, &stu[i].num, &stu[i].age, &stu[i].addr );

}

 

 

}

 

void load()

{

FILE *fp;

int i;

 

if( !(fp = fopen("student-list", "r")) )

{

printf("Cannot open the file!n");

return;

}

 

for( i=0; i<SIZE; i  )

{

fread(&stu[i], sizeof(struct student), 1, fp); //fread(buffer, size, count, fp);

}

 

fclose(fp);

};

 

 

/*

2011年09月25日20 :10:22 

功能:

据块(二进制文件的)读写函数:fread 和 fwrite

函数调用:

fread(buffer, size, count, fp);

fwrite(buffer, size, count, fp);

 

参数表明:

buffer: 是二个指针

对fread来讲,它是读入数据的贮存地点

对fwrite来讲,是要出口数据的地址(均指起初地址)

size: 要读写的字节数

count:要举办读写多少个size字节的数目项

fp:文件指针

*/

#include <stdio.h>

#include <stdlib.h>

 

struct student

{

long num;

char name[10];

int age;

} s[4];

 

int main(void)

{

FILE * fp;

int i;

 

if( (fp=fopen("student.dat", "w ")) == NULL ) //  “w ”读写展开或成立一个文书文件,允许读写

exit(0);

 

for(i=0; i<4; i )

{

printf("第%d个学生:n", i 1);

printf("学号:");

scanf("%ld", &s[i].num);

printf("姓名:");

scanf("%s", s[i].name);

printf("年龄:");

scanf("%d", &s[i].age);

//fwrite(&s, sizeof(struct student), 1, fp); // fwrite(buffer, size, count, fp);

}

 

fwrite(s, sizeof(struct student), 4, fp);

 

rewind(fp); //文件内部指针指向第2个字节

 

// for(j=0; j<4; j )

// {

// fread(&s, sizeof(struct student), 1, fp); // fread(buffer, size, count, fp);

// printf("%ld %s %dn", s.num, s.name, s.age);

// }

 

fread(s, sizeof(struct student), 4, fp); 

 

for(i=0; i<4; i )

{

printf("%ld %s %dn", s[i].num, s[i].name, s[i].age);

}

 

fclose(fp);

 

return 0;

}

 

 

格式化读写函数: fscanf 和fprinf 

函数调用:

fprintf(文件指针, 格式字符串, 输出表列);

fscanf(文件指针, 格式字符串, 输入表列);

 

函数功用:

从磁盘文件中按格式读入或输出字符。

例如:

fprintf(fp, "%d %6.2f", i, t);

fscanf(fp, "%d %f", &i, &t);

 

 

/*

2011年09月25日14 :56:07 

函数调用:

fprintf(文件指针, 格式字符串, 输出表列);

fscanf(文件指针, 格式字符串, 输入表列);

 

函数功用:

从磁盘文件中按格式读入或输出字符。

*/

#include <stdio.h>

 

FILE *stream;

 

void main( void )

{

   long l;

   float fp;

   char s[81];

   char c;

 

   stream = fopen( "fscanf.out", "w " ); //   “w ”   读写张开或树立多少个文书文件,允许读写

   if( stream == NULL )

      printf( "The file fscanf.out was not openedn" );

   else

   {

      fprintf( stream, "%s %ld %f%c", "a-string",  //为何%f%c之间未有空格 fscanf( stream, "%c", &c );  手艺把'x'读抽取来?

               65000, 3.14159, 'x' );

 

      /* Set pointer to beginning of file: */

      fseek( stream, 0L, SEEK_SET );//  退换文件的地方指针  fseek(文件类型指针, 位移量, 发轫点); 

/*

文本早先             SEEK_SET  0

文件当前职责      SEEK_CUR  1

文件末尾            SEEK_END 2

*/

 

      /* Read data back from file: */

      fscanf( stream, "%s", s );    //根据什么顺序输入就依照什么样顺序输出

      fscanf( stream, "%ld", &l );

      fscanf( stream, "%f", &fp );

      fscanf( stream, "%c", &c );  

 

      /* Output data read: */

      printf( "%sn", s );

      printf( "%ldn", l );

      printf( "%fn", fp );

      printf( "%cn", c );

 

      fclose( stream );

   }

}

 

 

/*

2011年09月25日14 :40:07 

功能:

函数调用:

fprintf(文件指针, 格式字符串, 输出表列);

函数功用:

从磁盘文件中按格式输出字符。

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

int i = 10;

double fp = 1.5;

char s[]="this is a string!";

char c = 'n';

 

FILE * stream;

 

stream = fopen("fprintf.out", "w");

fprintf(stream, "%s%c", s, c);

fprintf(stream, "%dn", i);

fprintf(stream, "%fn", fp);

fclose(stream);

system("type fprintf.out"); //此函数是将fprintf.out文件中的内容显示在荧屏上

 

return 0;

}

 

/*

2011年09月25日14 :40:07 

功能:

格式化输入学生消息-fprintf.c

 

函数调用:

fprintf(文件指针, 格式字符串, 输出表列);

函数成效:

从磁盘文件中按格式输出字符。

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE * fp;

long num;

char name[10];

int age;

int i;

 

if( (fp=fopen("stuendt.txt", "w")) == NULL )

exit(0);

 

for(i=0; i<5; i )

{

printf("第%d个学生:n", i 1);

printf("学号:");

scanf("%ld", &num);

 

printf("姓名:");

scanf("%s", name);

 

printf("年龄:");

scanf("%d", &age);

 

fprintf(fp, "学号:%ld 姓名:%9s 年龄: %dn", num, name, age);

}

 

 

fclose(fp);

 

return 0;

}

 

/*

2011年09月25日15 :37:36 

功能:

格式化输出学生音信-fscanf.c

 

函数调用:

fscanf(文件指针, 格式字符串, 输入表列);

 

函数作用:

从磁盘文件中按格式读字符。

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE * fp;

long num;

char name[10];

int age;

 

if( (fp=fopen("stuendt.txt", "r")) == NULL )

exit(0);

 

while( !feof(fp))

{

// fprintf(fp, "学号:%ld 姓名:%9s 年龄: %dn", num, name, age);

fscanf(fp, "学号:%ld 姓名:%9s 年龄: %dn", &num, name, &age); //应当要依照fprintf(fp, "学号:%ld 姓名:%9s 年龄: %dn", num, name, age); 中存入的格式来读取

printf("%ld %s %dn", num, name, age);

}

 

 

fclose(fp);

 

return 0;

}

 

逐一读写和轻便读写

逐条读写:

职责指针按字节地方顺序移动

 

私行读写:fseek函数

读写完上一个字符(字节)后,并不必须要读写其持续的字符(字节),而得以读写文件中自由地方上多须求的字符(字节)

 

函数功用:

改变文件的职位指针

 

函数的调用情势:

fseek(文件类型指针, 位移量, 开端点);

 

参数:

起始点:

文件开首            SEEK_SET  0

文件当前地方      SEEK_CUR  1

文本末尾           SEEK_END 2

 

例如:

fseek(fp, 100L, 0);

将地点指针移到离文件头九14个字节处

 

fseek(fp,50L, 1);

将地点指针移到离当下岗位肆十多个字节处

 

fseek(fp,10L, 2);

将地方指针从文件末尾处向后退十三个字节

 

例子:

/*

2011年09月22日23 :38:53 

总结:

各种读写和大肆读写

梯次读写:

地点指针按字节地点顺序移动

 

大肆读写:fseek函数

读写完上三个字符(字节)后,并不一定要读写其继续的字符(字节),而能够读写文件中从心所欲地点上多需求的字符(字节)

 

函数效率:

改换文件的地方指针

 

函数的调用形式:

fseek(文件类型指针, 位移量, 起头点);

 

参数:

起始点:

文本起头            SEEK_SET  0

文件当前岗位 SEEK_CUR  1

文件末尾 SEEK_END 2

 

例如:

fseek(fp, 100L, 0);

将地点指针移到离文件头九19个字节处

 

fseek(fp,50L, 1);

将地点指针移到离当下职分五十个字节处

 

fseek(fp,10L, 2);

将地点指针从文件末尾处向后退十个字节

*/

#include <stdio.h>

#include <stdlib.h>

 

struct student

{

char name[10];

int num;

int age;

char addr[15];

}boy;

 

void main()

{

FILE *fp;

 

int i=1; //用于固定第 i 个协会

 

if( !(fp = fopen("student-list", "r")) )

{

printf("Cannot open the file!n");

return;

}

 

rewind(fp); //设置文件之中指针指向文件头

 

fseek(fp, i*sizeof(struct student), 0); // fseek(文件类型指针, 位移量, 早先点);

fread(&boy, sizeof(struct student), 1, fp); //数据块读写函数:freed :   fread(buffer, size, count, fp);

//读取叁个上学的儿童的体积

/*

参数表明:

buffer: 是贰个指南针

对fread来讲,它是读入数据的存放地方

对fwrite来说,是要出口数据的地方(均指起先地址)

size: 要读写的字节数

count:要开始展览读写多少个size字节的数额项

fp:文件指针

*/

printf("name number    age    addrn");

printf("%s ]   }      %sn", boy.name, boy.age, boy.addr);

 

}

 

美洲杯竞猜网址, 

 

/*

2011年09月25日22 :02:36 

功能:

函数的调用情势:

fseek(文件类型指针, 位移量, 初始点);

 

参数:

起始点:

文件开始            SEEK_SET  0

文件当前位置 SEEK_CUR  1

文件末尾 SEEK_END 2

 

例如:

fseek(fp, 100L, 0);

将地方指针移到离文件头九拾七个字节处

 

fseek(fp,50L, 1);

将地点指针移到离当下岗位肆20个字节处

 

fseek(fp,10L, 2);

将地方指针从文件末尾处向后退12个字节

*/

#include <stdio.h>

#include <stdlib.h>

 

struct student

{

long num;

char name[10];

int age;

}s[10];

 

int main(void)

{

FILE *fp;

int i;

struct student stu;

 

if( (fp=(fopen("student.dat", "w "))) == NULL )

exit(0);

 

for(i=0; i<10; i )

{

printf("第%d个学生:n", i 1);

printf("学号:");

scanf("%ld", &s[i].num);

printf("姓名:");

scanf("%s", s[i].name);

printf("年龄:");

scanf("%d", &s[i].age);

}

 

fwrite(s, sizeof(struct student), 10, fp);

 

for(i=1; i<=9; i=i 2)

{

fseek(fp, (i-1)*sizeof(struct student), SEEK_SET);

fread(&stu, sizeof(struct student), 1, fp);

printf("%ld %s %d", stu.num, stu.name, stu.age);

}

 

fclose(fp);

return 0;

}

 

 

文件定位:

文件中有一个职位指针,指向当前读写的地方,若是各个读写多少个文件,每回读写三个字符,则读写完一个字符后,该职分指针自动移动指向下三个字符地点。假若想退换这么的规律,强制使地方指针指向其余钦赐的岗位。能够用上面介绍的有关函数完结上述意义:

 

1、rewind函数

rewind函数的功力是使指针重新回来文件的早先,此函数未有重回值

 

/*

2011年09月25日20 :28:38 

功能:

将stuendt.txt文件中的内容读抽取来映今后显示器上

下一场将stuendt.txt中的内容复制到stuendt2.txt文书中

 

注意:

rewind函数的功用是使指针重新回来文件的启幕,此函数未有重回值

*/

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

FILE * fp;

FILE * f;

char c;

 

if( (fp=fopen("stuendt.txt", "r")) == NULL )

exit(0);

 

c=fgetc(fp);

while(!feof(fp) )

{

// printf("%c", c);

fputc(c, stdout); //以上三种办法都足以将stuendt.txt中的内容打字与印刷到荧屏上  stdout函数就是将内容展现在荧屏上

c=fgetc(fp); 

}

 

if( (f=fopen("stuendt2.txt", "w")) == NULL )

exit(0);

 

rewind(fp); // rewind函数的功能是使指针重新归来文件的启幕,此函数未有再次回到值

 

while(!feof(fp) )

{

fputc(c, f); //当向stuendt2.txt中写入叁个字符后文件之中指针就能自动指向后四个字节

c=fgetc(fp); 

}

 

fclose(fp);

fclose(f);

 

return 0;

}

 

 

 

ftell函数:

long ftell( FILE *stream );

函数功效:

得到流式文件中的当前地点,用相对于文件伊始的位移量来表示。

 

返回值:

归来当前岗位,出错时再次来到-1L。

 

选用比方:

i = ftell(fp);

if( i == -1L)

printf("er


//==============================================================
fwrite 的使用

  if((fp=fopen("test.txt","w"))==NULL)
  {  
    printf("不能够开发文件n");
  exit(0);
  }

fprintf , fscanf, putw , getw , rewind , fseek 函数

//============================================================
fgetc 读取字符

//==========================================

  fclose(fp);
}

//==================================
fputc 向文件写入字符

  if((fp=fopen(argv[1],"r"))==NULL)
  {
    printf("不能够开发文件n");
    exit(0);
  }

  if((fp=fopen(argv[1],"r"))==NULL)
  {
    printf("不可能开采文件n");
    exit(0);
  }

//==============================================================
fwrite 的使用

TAG标签: 篮球外围下注
版权声明:本文由篮球外围下注发布于系统,转载请注明出处:Linux下C语言的公文文件读写(fputc,fgetc,fwrite,fre