ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

信安系统学习笔记二

2022-09-11 20:33:08  阅读:183  来源: 互联网

标签:文件 调用 字符 信安 系统 笔记 学习 fopen open


知识点归纳

系统调用函数:open()、read()、write()、lseek()、close()

 

 

 

 

I/O库函数:fopen()、fread()、fwrite()、fseek()、fclose()

i/o库模式:fopen()中的模式参数可以指定为:"r" 、 "w" 、"a",分别代表读、写、追加。每个模式字符串可包含一个+号,表示同时读写,或者在写入、追加情况下,如果文件不存在则创建文件。"r+":表示读/写,不会截断文件。"w+":表示读/写,但是会先截断文件;如果文件不存在,会创建文件。"a+":表示通过追加进行读/写;如果文件不存在,会创建文件。

 

二者区别:

1.系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底层调用的意思。面向的是硬件。而库函数调用则面向的是应用开发的,相当于应用程序的api。

2.系统调用程序使用while循环读取/写入文件内容。在每个迭代中,它发出read()系统调用,将最多4KB的字符读入buf[]。然后,它将各字符从buf[]写到文件描述符1中,这是该进程的标准输出。正如前文所指出的,使用系统调用一次写入一个字节非常低效。相反,I/O库程序仅仅使用fgetc(fp)从文件流中获取字符,通过putchar()输出字符,直至文件结束符。

3.系统调用open()打开一个文件进行读取,并返回一个整数文件描述符fd,如果open()失败,则返回-1。I/O库函数fopen()返回一个FILE结构体指针,如果fopen()失败,则返回NULL。

问题与解决思路

I/O库中标准i/o与文件i/o有什么联系与区别?

实践内容与截图

标签:文件,调用,字符,信安,系统,笔记,学习,fopen,open
来源: https://www.cnblogs.com/zhilan/p/16684425.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有