杂乱无章的Linux——流

标准i/o库
全部保存在《stdio.h》库中。

  • fopen函数:主要用于文件和终端的输入输出,成功返回FILE*指针,失败返回NULL,如果需要对设备进行明确的控制,建议用open系统调用。

    在这里插入图片描述

  • fread函数:在这里插入图片描述

  • fwrite函数:从指定的数据缓冲区中取出数据记录,并把他们写到输出流中。
    在这里插入图片描述

  • fclose函数:关闭指定的文件流stream,是所有尚未写出的数据都写出。
    在这里插入图片描述

  • fflush函数:把文件流中所有未写出的数据全部写出。fclose函数隐含执行了一次flush操作。在这里插入图片描述

  • fseek函数:在这里插入图片描述

  • fgetc、getc和getchar函数:fgetc,从文件流中取出下一个字节,并把它作为一个字符返回,当达到文件尾或出现错返回EOF,必须通过ferror或feof来区分两种情况。getc和fgetc一样,但暂且理解为没有fgetc好用。getchar作用相当于getc,从标准输入读取下一个字符。在这里插入图片描述

  • fputc、putc和putchar函数:把一个字符写到输出文件流中,失败返回EOF。三者关系同上,putchar相当于putc(c,stdout),把单个字符写到标准输出,putchar和getchar都是把字符当作int类型而不是char类型,允许文件尾(EOF)标识取-1。在这里插入图片描述

  • fgets和gets函数:fgets从输入文件流stream中读取一个字符串,把读取的字符串写到s指向的字符串里,直到遇见换行符,即已传输了n-1个字符,或者达到文件尾,会把遇到的换行符也传递进去,一次只能传递n-1个字符,因为要加一个表示结尾的空字符\0,成功返回一个指向s的指针,如果文件达到末尾会设置这个文件流的EOF标志并返回一个空指针,如果读错误,返回一个空指针,并设置erron指出错误的类型。gets类似fgets,从标准输入读取数据并丢弃遇到的换行符,并在接收字符串尾部加上一个NULL字节。但gets可能会造成缓冲区溢出,所以尽量用fgets代替gets.在这里插入图片描述格式化输入、输出:

  • printf、fprintf和sprintf函数:对不同类型参数进行格式编排并输出,printf把自己的输出送到标准输出;fprintf把自己的输出送到一个指定的文件流;sprintf把自己的输出加一个结尾空字符写到作为参数传递过来的字符串s中,s必须足够容纳输出。
    在这里插入图片描述

转换控制符;在这里插入图片描述
字段控制符是转换控制符中跟在%后面的数字,在这里插入图片描述
成功返回一个整数表示字符的个数,但sprintf返回的整数不算结尾的空字符,如果发生错误,会返回一个负值并设置error。

  • scanf、sscanf和fscanf函数:控制输入格式的转换。数据类型必须精确匹配,否则内存数据会破坏,程序崩溃,并可能没有提示错误信息。转换控制符和printf相同,格式字符串中的空格用于忽略数据中位于转换控制符中的各种空白字符(空白、制表符、换页符、换行符)。
    在这里插入图片描述在这里插入图片描述
    以*开头的控制符表示对应位置的数据将会被忽略,%c不会忽略(起始)空白字符,%s忽略起始空白字符,并在后面遇见空白字符时停止。在这里插入图片描述
    返回值是读取项的个数,如果第一个都读取失败将会返回0,如果第一个数据项之前就达到了输入的末尾,返回EOF,如果发生读错误,会设置流错误标志,并设置错误变量errno指明错误类型。在这里插入图片描述
    其他流函数:在这里插入图片描述
    文件流错误:在这里插入图片描述
    文件流和文件描述符:在这里插入图片描述在这里插入图片描述
    文件与目录的维护:
  • chmod系统调用:改变文件或目录的访问权限。在这里插入图片描述
  • chown系统调用:在这里插入图片描述
  • unlink、link和symlink系统调用:unlink删除一个文件,成功返回0,失败返回-1.link调用创建一个指向已有文件path1的新链接,新目录项由path2给出。symlink创建一个新的符号链接,符号链接不会增加目录的链接数,防止文件被删除。在这里插入图片描述
  • mkdir和rmdir系统调用:建立和删除目录。在这里插入图片描述
    在这里插入图片描述
  • chdir系统调用和getcwd函数:浏览目录
    在这里插入图片描述
    目录扫描:
  • opendir函数:打开一个目录并建立一个目录流。成功返回一个指向DIR结构的指针,该指针用于读取目录数据项,失败返回一个空指针。在这里插入图片描述
  • readdir函数:在这里插入图片描述
    在这里插入图片描述
  • telldir函数:返回记录一个目录流里的当前位置。在这里插入图片描述
  • seekdir函数:
    在这里插入图片描述
  • closedir函数:关闭一个目录流并释放相关联的资源,成功返回0,失败返回-1。在这里插入图片描述
    错误处理:在这里插入图片描述
    strerror函数:将错误代码映射为字符串;perror函数:将错误代码映射为字符串,并把它输出到标准错误输出流中。
    拓展:
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值