c文件操作接口

1. c文件操作接口

1.1 基础操作接口

/**
 * @brief 打开文件
 * @param[filename] 指定文件的名字,如果文件不存在,则会以该名字创建新文件
 * @param[mode] 打开文本文件的参数有:r,w,a,r+,w+,a+;打开二进制文件的参数有:rb,wb,ab,rb+,r+b,wb+,w+b,ab+,a+b;
                简单说明文本文件的参数含义:
                r是指只读模式打开文本文件;
                w是指只写的模式打开文本文件;如文件不存在会创建文件,如果文件存在会覆盖原来的内容;
                a指以追加写入的模式打开文件;
                r+指以读写的方式打开文件;
                w+以读写的方式打开文件;如果文件不存在会创建文件,如果文件存在会将文件定位在开头处;
                a+以读写模式打开文件;如果文件不存在会创建文件。读取文件会从文件开头处,写入文件会将文件定位在末尾处;
 * @retval 返回指向文件的指针
 */
FILE *fopen( const char *filename, const char *mode );

/**
 * @brief 关闭文件
 */
int fclose( FILE *fp );

/**
 * @brief 往文件写入单个字符
 */
int fputc( int c, FILE *fp );
/**
 * @brief 往文件写入一串字符
 */
int fputs( const char *s, FILE *fp );
/**
 * @brief 读取一个字符
 * @param[*fp] 指向文件的指针
 * @retval 返回读取到的字符,如果错误则返回EOF
 */
int fgetc( FILE * fp );
/**
 * @brief 读取一串字符
 * @param[buf] 缓存读取到的字符
 * @param[n] 需要读取的字符数是n-1,剩下一个空间会补null空字符,如果遇到\n或末尾EOF则会中断。
 * @param[*fp] 指向文件的指针
 * @retval 返回指向
 */
char *fgets( char *buf, int n, FILE *fp );

/**二进制读写文件函数**/
size_t fread(void *ptr, size_t size_of_elements, 
             size_t number_of_elements, FILE *a_file);
              
size_t fwrite(const void *ptr, size_t size_of_elements, 
             size_t number_of_elements, FILE *a_file);

1.2 将标准输入输出重定向到文件的方法如下

// 函数原型如下
FILE *__cdecl freopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode,FILE * __restrict__ _File)

// fp是返回的文件对象,可用于释放文件资源时使用(释放文件资源还可以fclose(stdout))
// log.txt是文件名
// "a" 指以追加的方式打开文件
// stdout将标准输出重定向到文件
FILE *fp = freopen("log.txt", "a", stdout); 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值