首页 > 其他 > 详细

unix环境高级编程——标准IO

时间:2015-08-30 15:51:29      阅读:241      评论:0      收藏:0      [点我收藏+]

1、对于系统调用中的IO,是针对文件描述符的。而对于标准的IO是针对流的。

标准的IO函数返回一个指向FILE的指针。


2、打开流


FILE *f;

f = fopen("./a.txt",wr+);

通过上面得到打开文件的指针,以后的操作可以根据此指针来进行。


3、读和写数据流

(1)每次读一个字符的IO:  getc(f)  fgetc(f)  getchar()

  getchar():表示从标准输入中获得字符

char c;  

FILE *f;

f = fopen("./a.txt",wr+);

c = fgetc(f);

c = getc(f);

fputs(“d”,fp)  :将字符“d”写入文件中

putchar:表示将字符输出到标准输出

(2)每次一行的IO

gets fgets




(3)直接IO,fread,fwrite


fwrite(buffer,size,count,fp)

buffer:代表要输入的数据

size:每个数据类型的大小

count:数据的数量

fp:要输入的文件指针


char  *buffer ="abcdefg";

fp = fopen("./b.txt","rb+");

fwrite(buffer,sizeof(char),strlen(buffer),fp)

这样就可以把buffer中的字符写入b.txt中啦


实现文件的复制:


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

void main()
{
   FILE  *fa,*fb;
   char b[100];
   long size;
   fa = fopen("./a.txt","rb+");
   fb = fopen("./b.txt","rb+");
   fseek(fb,0,SEEK_END); //fseek将文件指针指向最后
   size = ftell(fb);     //计算出文件字符数
   rewind(fb);


   fread(b,sizeof(char),size,fb);
   fwrite(b,sizeof(char),strlen(b),fa);



}


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

unix环境高级编程——标准IO

原文:http://blog.csdn.net/a879365197/article/details/48102041

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!