2022-2023-1 20221304 《计算机基础与程序设计》第十四周学习总结

2022-2023-1 20221304 《计算机基础与程序设计》第十四周学习总结

作业信息

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP
这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK14
这个作业的目标 自学教材《C语言程序设计》第13章并完成云班课测试
作业正文 https://www.cnblogs.com/liu-221304-yi-tong/p/16947708.html

教材学习内容总结

二进制文件和文本文件
文件的打开和关闭,顺序读写与随机读写
标准输入/输出及其重定向

教材学习中的问题和解决过程

  • 问题1:二进制文件和文本文件的区别?
  • 问题1解决方案:上网查询资料后得知:
    1)文本文件:这类文件以文本的ASCII码形式存储在计算机中。它是以"行"为基本结构的一种信息组织和存储方式。
    2)二进制文件:这类文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们,只有通过相应的软件才能将其显示出来。二进制文件一般是可执行程序、图形、图像、声音等等。
    文本方式和二进制方式的最大区别在于文本方式对于'\n'换行符的理解不同,在DOS平台下,该字符会被展开成< LF>两个控制字符(相当于"\r\n"),在ASCII字符集下是0DH,0AH,而在UNIX平台下,仅仅是,不会展开。而在二进制方式下,不管是什么平台,'\n'都是精确的。而类似于一个数学上的数字128,会在文件中以什么样的格式存储,是以数字形式存储(80H),还是对应的可读文本('1','2','8'),却和文件流的打开方式无关。在C++的文件流中,使用的术语叫做格式化输入输出操作和无格式化操作,前者也就是<<和>>运算符,将数字按照可读文本存储,后者是get/put成员函数,直接存储数字格式。
  • 问题2:随机读写与顺序读写怎么去理解?
  • 问题2解决方案:随机读写是相对顺序读写而言的,所谓随机读写,是指可以在任何时候将存取文件的指针指向文件内容的任何位置。一般情况下SAS机械硬盘主要是看顺序读写性能,SSD固态盘主要看随机读写性能。文件的操作方式:顺序读写:文件指针只能从头移动到尾;随机读写:文件指针可以随意移动,根据需要。
  • 问题3:什么是重定向?
  • 问题3解决方案:上网查询资料后得知:
    计算机最基础的功能是可以提供输入输出操作。对于Linux系统来说,通常以键盘为默认输入设备,又称标准输入设备;以显示器为默认的输出设备,又称标准输出设备。所谓重定向,就是将原本应该从标准输入设备(键盘)输入的数据,改由其他文件或设备输入,或将原本应该输出到标准输出设备(显示器)的内容,改由输出到其他文件或设备上。
    文件标识符是重定向中很重要的一个概念,Linux使用0到9的整数指明了与特定进程相关的数据流,系统在启动一个进程的同时会为该进程打开三个文件:标准输入(stdin)、标准输出(stdout)、标准错误输出(stderr),分别用文件标识符0、1、2来标识。如果要为进程打开其他的输入输出,则需要从整数3开始标识。默认情况下,标准输入为键盘,标准输出和错误输出为显示器。
    简单的说,I/O重定向可以将任何文件、命令、脚本、程序的输出重定向到另外一个文件、命令、程序或脚本。

代码调试中的问题和解决过程

暂无

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 3000行 30篇 200小时
第一周 50/50 2/2 15/15
第二周 100/150 2/4 15/30
第三周 150/350 3/7 20/50
第四周 150/500 3/10 20/70
第五周 150/650 2/12 20/90
第六周 150/800 4/16 20/110
第七周 150/950 1/17 20/130
第八周 150/1100 3/20 20/150
第九周 150/1250 1/21 20/170
第十周 150/1400 1/22 20/190
第十一周 150/1550 1/23 20/210
第十二周 150/1700 1/24 20/230
第十三周 150/1850 1/25 20/250
第十四周 150/2000 1/26 20/270
  • 计划学习时间:20小时

  • 实际学习时间:20小时

posted @ 2022-12-03 15:40  20221304刘奕彤  阅读(29)  评论(0编辑  收藏  举报