文件的读写

一、IO

标准io (输入输出)站在计算机角度来确定输入输出,在linux里面io都是对文件操作。

so 动态库函数(共享库),(公共的,用的很多),在user里面存储。

man手册 manual

  1. 查命令
  2. 3.系统调用(只能在Linux里面调),3理论上是跨平台。都是函数。
  3. 设备文件
  4. 文件格式和方便 /etc(系统级别的配置)
  5. 游戏
  6. 杂项
  7. 管理员命令,最高级别是root
  8. 内核更新路线

注意

  • c库就是一个函数的集合
二、文件读写过程

1、打开文件,file

2、io操作,读写操作

3、关闭文件

 2.1 打开文件

参数的设置

操作文件被操作文件都存在,w 清零或者创建新文件 。

2.2 fgetc() 读文件

系统规定用-1表示,不是文件的内容,这是系统反馈的

2.3 fputc() 

一个字符一个字符的放。放到那个文件里面

2.4  fgets() 读文件 

size的数值尽可能和所开的空间一样,开的空间尽量比这一行长。


#include<stdio.h>
#include<string.h>
int main(int argc,char *argv[])
{
    FILE* fp = fopen("/etc/passwd","r");
    if(NULL == fp)
    {
        printf("fopen error\n");
        return 1;
    }
    char buf[512] = {0};
    while(1)
    {
        memset(buf,0,sizeof(buf));
        if(fgets(buf,sizeof(buf),fp))
        {
            printf("%s",buf);
        }
        else
        {
            break;
        }
    }
    fclose(fp);
    return 0;
}
 2.5 fputs() 写文件

 字符串写文件代码

#include<stdio.h>
#include<string.h>
int main(int argc,char* argv[])
{
    FILE* fp = fopen("3.txt","w");
    char buf[]="hello china";
    fputs(buf,fp);
    fclose(fp);
    return 0;
}

2.6 fread()读

一次性放进去,一次性读出类似结构体类型

注意 

  •  要写的文件 大小 第三个写1就行(结构体数组写几个结构体)一次性写进去可以,最后一个是写哪里去
  • 如果读或者写里面没有少了,那么返回值为0

2.6 fwrite() 写

与读操作一样,只是现在是从结构体中往文件里面写。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值