C语言基础-IO输入输出

 IO操作:

c语言提供IO操作,头文件在stdio.h

序号原型备注

fopen函数

FILE *fopen(const char *filename, const char *mode);打开文件

fread函数

size_t fread(void *ptr, size_t size, size_t nitems, FILE *stream);读文件

fwrite函数

size_t fwrite (const void *ptr, size_t size, size_t nitems, FILE *stream);写文件

fclose函数

int fclose(FILE *stream);关闭文件

fflush函数


int fflush(FILE *stream);
把文件流里的所有未写出数据立刻写

fseek函数

int fseek(FILE *stream, long int offset, int whence);读写位置

fgetc、getc和getchar函数

int fgetc(FILE *stream);

int getc(FILE *stream);

int getchar()

从流中获取字符

fputc、putc 和 putchar函数

int fput(int c, FILE *stream);

int putc(int c, FILE *stream);

int putchar(int c);

int fput(int c, FILE *stream);

int putc(int c, FILE *stream);

作用是把一个字符写到一个输入文件流中

int putchar(int c):将字符串输出到终端

fgets和gets函数

char *fgets(char *s, int n, FILE *stream);

char *gets(char *s);

char *fgets(char *s, int n, FILE *stream):从流中获取字串

作用是从输入文件流stream里读取一个字符串

char *gets(char *s):从标准输入读取数据并丢弃遇到的换

mode:指定文件的打开方式,它取下列字符串中的值:mode参数    说明
“r"或”rb“    以只读方式打开
“w”或“wb”    以写方式打开,并把文件长度截短为0
"a"或“ab”    以写方式打开,新内容追加在文件尾
“r+”或“rb+”或“r+b”    以更新方式打开(读和写)
“w+”或“wb+”或“w+b”    以更新方式打开,并把文件长度截短为0
“a+”或“ab+”或“a+b”    以更新方式打开,新内容追加在文件尾

文件读:


#include  "test.h"
#include <iostream>
using namespace std;
int  main()
{  
    /*将输入的字符串输出到文件里
    1.从控制台输入的到变量
    2.输入到文件中
    FILE* fp ;
    fopen();
    scanf()
    fclose();
    fscanf()
    fgets()
    */
    /*
    函数:fopen():打开成功时返回为非空指针,否则相反
    第一个参数:文件存在路径
    第二个参数:读写属性:r,w,a,r+,w+,a+
    */
    FILE* fp=fopen("./file.txt","a+");
    if(!fp)
    {
        cout<<"open file  failed"<<endl;
        return 1;
    }
    
    /*
    fprintf:向文件输出字符串,与printf区别,printf输出的是终端
    第一个参数:文件指针
    第二个参数:字符串
    */
    char str[128]={0};
    /*
    函数fgets:从文件里读取字符串
    第一个参数:字符串变量
    第二个参数:读取字符串个数
    第三个参数:文件指针
    */
    //cout<<fgets(str,20,fp)<<endl;
    while(!feof(fp))
    {
        fscanf(fp,"%s",str);
        cout<<str<<endl;
    }
     
    //fputs(str,fp);
    
    /*
    函数:fclose():关闭文件指针
    */
    fclose(fp);
    
}

文件写:

#include  "test.h"
#include <iostream>
using namespace std;
int  main()
{  
    /*将输入的字符串输出到文件里
    1.从控制台输入的到变量
    2.输入到文件中
	FILE* fp ;
	fopen();
	scanf()
	fclose();
	fprintf()
	*/
	/*
	函数:fopen():打开成功时返回为非空指针,否则相反
	第一个参数:文件存在路径
	第二个参数:读写属性:r,w,a,r+,w+,a+
	*/
    FILE* fp=fopen("./file.txt","a+");
    if(!fp)
    {
		cout<<"open file  failed"<<endl;
		return 1;
	}
	
	/*
	fprintf:向文件输出字符串,与printf区别,printf输出的是终端
	第一个参数:文件指针
	第二个参数:字符串
	*/
	char str[128]={0};
	printf("input string:\n");
	/*
	scanf():从终端输入到字符串变量里
	第一个函数:格式化参数
	第二个参数:字符串变量
	*/
	scanf("%s",str);
	fprintf(fp,str);
	
	/*
	函数:fclose():关闭文件指针
	*/
	fclose(fp);
	
}

参考:

1.C语言——标准I/O库中的库函数

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值