240 发简信
IP属地:黑龙江
  • 8.6实例--存储分配程序

    malloc并不是从一个在编译时就能确定的固定大小的数组中分配存储空间,而是在需要时向操作系统申请空间.因为程序中的某些地方可能不通过malloc调用申请空间,所以,mall...

  • 8.5实例--目录列表

    这一章非常乱,而且难以看懂,因为没有UNIX系列系统的基本知识的话,有的东西很难明白,而书上对于这些知识的内容只是一笔带过.所以我感觉这章如果不打算用LINUX类似的系统的话...

  • 练习8-4

    形参实参暂时不提.与原来一样. 这个程序的功能是移动读写位置.所以他有两种情况分别是读和写. 首先是读的情况.因为有缓冲区的存在,如果已经打开了文件并且已经读取数据,那么当前...

  • 练习8-3

    _flushbuf这个函数与教材书上的没什么太大区别,思路是一样的. 首先判断fp文件是否在表示已经打开的数组_iob中因为LINUX要对文件操作都需要先打开该文件. 然后判...

  • 8.5实例-fopen和getc函数的实现

    标准库中的文件不是通过文件描述符描述的,而是使用文件指针描述的.文件指针是一个指向包含文件各种信息的结构的指针,该结构包含下列内容:一个指向缓冲区的指针,通过它可以一次读入文...

  • 8.4随机访问

    输入/输出通常是顺序进行的,每次调用read和write进行读写的位置紧跟在前一次操作的位置之后.但是,有时候需要以任意顺序进行访问文件,系统调用lseek可以在文件中任意移...

  • 练习8-1

    很简单个程序.比原先简单多了(我感觉)全是系统调用,而不用自己去写函数. 首先判断参数数量.只有程序名就从标准输入输出到标准输出.不然依次打开文件(--argc,每次打开一个...

  • 8.3open,creat,close和unlink

    除了标准输入,标准输出和标准错误文件外.其他文件都必须在读或写之前显示的打开,(类似之前的fopen后得到的文件指针.然后去操作这个文件指针.)系统调用open和creat用...

  • 8.2低级I/O--read和write

    输入和输出是通过read和write系统调用实现的(调用系统的功能),在C语言程序中,可以通过函数read和write访问这两个系统调用.这两个函数中,第一个参数是文件描述符...

  • 第8章UNIX系统接口

    我是先学习的Linux系统然后再学的C,在这里确实能容易不少.而且也对Linxu系统有了更直观的认识. UNIX操作系统通过一系列的系统调用提供服务,这些系统调用实际上是操作...

  • 练习7-8

    主函数没什么说的,如果没有参数,就直接从标准输入读取数据.(后面那个空格符是需要打印的文件名,从标准输入读取的话就没有文件名,就是这个空字符串.) 如果大于1的话依次打开文件...

  • 练习7-7

    对文件中的数据进行对比,这个程序很实用啊. 复杂倒是不复杂. 首先读取参数.如果碰到'-'((*++argv)[0]这个是下一个参数的首字符). 然后读取'-'后面的字符(*...

  • 练习7-6

    这本书看到现在也应该如鱼得水了.看一些本书的代码扫一眼就能知道是什么意思了.套路已经熟悉了~~ 如果参数数量不是三个(程序名和两个文件名),向标准错误(也就是屏幕)输出错误信...

  • 7.7行输入和行输出

    标准库提供了一个输入函数fgets,类似于前面的getline函数.库函数gets和puts的功能与fgets和fputs类似,但它们是对stdin和stdout进行操作.有...

  • 7.6错误处理

    其实这节没啥说的,就是函数调用,把printf改成了fprintf.反正这节没什么内容把一个小题放这里吧. 我们知道,标准输出和标准错误默认都是将信息输出到终端上,那么他们有...

  • 7.5文件访问

    在读写一个文件之前,必须通过库函数fopen打开该文件,fopen用文件的外部名与操作系统进行某些必要的连接和通信,然后返回一个可以用于文件读写操作的指针.该指针称为文件指针...

  • 练习7-5

    对于这个练习虽然只是之前的改进版本,但是有很多地方都需要仔细想一下. 首先那个static的数组声明,通过static的声明,变量的内容是永久保存的,也就是说就算退出函数变量...

  • 7.4格式化输入

    输入函数scanf对应输出函数printf,它在相反的方向上(scanf向变量中写入,printf从变量中读取.)提供同样的转换功能.scanf函数从标准输入中读取字符序列,...

  • 练习7-3

    与原书的代码相比增加了一些功能,但是也没有太多.开头一样.localfmt数组记录%之后的内容,判断式判断'%'之后的字符是否合法并且不是字母.符合条件将其后的内容复制到lo...