《信息安全系统设计与实现》第二周学习笔记

《信息安全系统设计与实现》第二周学习笔记

一、第九章 I/O库函数

1、系统调用函数

函数 描述
fork 创建一个新的进程,新进程是当前进程的副本。
execve 在当前进程中执行新的程序。
waitpid 等待指定进程的终止,并获取其退出状态。
exit 终止当前进程并返回退出状态。
pipe 创建一个管道,用于进程间通信。
read 从文件描述符读取数据。
write 向文件描述符写入数据。
open 打开或创建文件。
close 关闭文件描述符。
dup/dup2 复制文件描述符或将一个文件描述符复制到另一个指定的文件描述符。
chdir 改变当前工作目录。
mkdir 创建一个新的目录。
rmdir 删除一个空的目录。
unlink 删除一个文件。

系统调用函数允许程序与操作系统进行交互,执行底层的系统功能。
这些函数提供了访问文件、进程管理、目录操作等功能,使得我们能够编写更加底层的程序和与操作系统进行通信。
然而,不同操作系统可能具有不同的系统调用函数,并且系统调用的使用方式也可能有所不同。

2、I/O库函数:

函数 描述
fread 用于从文件中读取数据,可以指定要读取的数据块的大小和数量。
fwrite 用于向文件中写入数据,可以指定要写入的数据块的大小和数量。
fgetc 用于从文件中读取一个字符。
fputc 用于向文件中写入一个字符。
fgets 用于从文件中读取一行数据。
fputs 用于向文件中写入一行数据。
fprintf 用于向文件中写入格式化的数据。
fscanf 用于从文件中读取格式化的数据。
fclose 用于关闭一个打开的文件。
feof 用于检测文件是否已经到达文件末尾。
rewind 用于将文件指针重置为文件的开头。
fseek/ftell 用于移动文件指针到指定的位置或者获取当前文件指针的位置。

3、fopen()中的模式参数

参数 描述
r 以只读方式打开文件。文件的指针将会放在文件的开头。
w 以写入方式打开文件。如果文件已存在,则文件内容将被清空;如果文件不存在,则创建新文件。
a 以追加方式打开文件。文件的指针将会放在文件的末尾。如果文件不存在,则创建新文件。
x 以独占方式创建并打开文件。如果文件已经存在,则无法打开文件。
t 文本模式(默认)。
b 二进制模式。
+ 打开文件以进行更新(可读可写)。

二、代码实践

1 、在文件夹中编写主程序代码,利用fopen函数,打开input读取其中内容,输出后放入output.txt中,利用了fgetc函数读取其中内容
if (islower(c)):这是一个条件语句,用于检查字符是否为小写字母,当传入的字符是小写字母时,函数返回非零值。
利用字符处理函数c = toupper(c):这是一个字符处理函数,用于将小写字母转换为大写字母

2、经过转换,可以看到input中的小写字母已经转换为了大写

3、代码中文件如下

打开文件失败后,会进行提示

三、苏格拉底问答








四,学习收获和问题

1、编写时遇到的问题
在进行字符转换时,本来打算利用base编码遍历再逐个加,但是通过询问gpt发现不用那么复杂,系统自带可以进行转换的函数,减少了很多工作量

2、代码可能存在的问题

3、代码改进方向

posted @ 2023-09-17 22:07  20211309宁心宇  阅读(15)  评论(0编辑  收藏  举报