信息安全系统设计与实现(上)作业二

一、苏格拉底挑战

二、学习笔记

  1. I/O库函数

    • I/O库函数是编程语言提供的高级接口,用于处理输入和输出操作。
    • 这些函数提供了更友好、更抽象的方法来进行I/O操作,通常不需要直接操作底层系统。
  2. 系统调用

    • 系统调用是操作系统提供的底层接口,用于执行实际的I/O操作。
    • I/O库函数通常会将请求转发给适当的系统调用来执行实际的I/O操作,例如读取文件或从网络套接字发送数据。
  3. 示例

    • 在C语言中,printf 是I/O库函数,它使用底层的系统调用来进行标准输出操作。

I/O库模式

  1. 字符模式I/O

    • 字符模式I/O逐字符处理输入和输出,通常使用 getcharputchar 进行字符的读取和写入。
    • 这种模式适用于简单的文本数据处理。
  2. 行模式I/O

    • 行模式I/O逐行处理输入和输出,通常使用 getsputs 进行整行的读取和写入。
    • 这种模式适用于文本文件的逐行操作,例如读取日志文件。
  3. 格式化I/O

    • 格式化I/O允许指定数据的格式,通常使用 printfscanf 来进行输入和输出。
    • 这种模式支持更复杂的数据处理,例如数字格式化、精度控制等。
  4. 内存中的转换函数

    • 内存中的转换函数(如 sprintfsscanf)用于将数据从内存中的字符串进行输入和输出。
    • 这对于处理字符串数据,如构建动态SQL查询或解析配置文件,非常有用。

文件缓冲流

  1. 缓冲流

    • 缓冲流是I/O库的机制,用于提高性能。
    • 数据在内存缓冲区中临时存储,以减少频繁的磁盘或网络访问,从而提高效率。
  2. 标准缓冲 vs 行缓冲 vs 无缓冲

    • 标准缓冲模式下,数据在满足一定条件(例如缓冲区满、换行符出现)时才写入文件。
    • 行缓冲模式下,数据在每次输出操作后立即写入文件,通常用于标准输出。
    • 无缓冲模式下,数据立即写入文件,没有缓冲,适用于特殊情况。

变参函数

  1. 变参函数

    • 变参函数是可以接受不定数量参数的函数。
    • I/O库函数中的典型例子是 printf,它可以接受不同数量和类型的参数,根据格式字符串进行格式化输出。
  2. 格式字符串

    • 变参函数通常使用格式字符串来指定参数的数量和类型。
    • 格式字符串包含特殊的格式占位符(如%s%d),用于描述参数的输出格式,确保正确的匹配和输出。

三、程序模拟

 

posted @ 2023-09-17 21:05  洺君  阅读(12)  评论(0)    收藏  举报