CSAPP 第三版 第十章 作业
自己做的 仅供参考 可能出现错误

注: 10.7之后 mark一下,寒假补坑,学校只教了一点,近期又在复习……于是直接照搬了学长的答案

https://www.cnblogs.com/liqiuhao/p/8305036.html

10.6

1.  若能成功打开"foo.txt"
1.1 若能成功打开"baz.txt"
41.2 若不能打开"baz.txt"
-12.  若不能成功打开"foo.txt"
2.1 若能成功打开"baz.txt"
32.2 若不能成功打开"baz.txt"
-1

10.7

#include "csapp.h"int main(int argc, char **argv)
{int n;rio_t rio;char buf[MAXBUF];Rio_readinitb(&rio, STDIN_FILENO);while((n = Rio_readnb(&rio, buf, MAXBUF)) != 0) Rio_writen(STDOUT_FILENO, buf, n);exit(0);
}

10.8

#include "csapp.h"
#include "csapp.c"
#include <string.h>
#include <stdio.h>int main (int argc, char **argv)
{struct stat stat;char *type, *readok;char buf[MAXBUF];char filename[MAXBUF];memset(buf, 0, MAXBUF);memset(filename, 0, MAXBUF);if (argc != 2)  {fprintf(stderr, "usage: %s <descriptor number>\n", argv[0]);exit(0);}sprintf(buf+sprintf(buf, "/proc/self/fd/"), argv[1]);if(readlink(buf, filename, sizeof(filename)) == -1){fprintf(stderr, "bad file descriptor\n");exit(EXIT_FAILURE);}Stat(filename, &stat);if (S_ISREG(stat.st_mode))     /* Determine file type */type = "regular";else if (S_ISDIR(stat.st_mode))type = "directory";else type = "other";if ((stat.st_mode & S_IRUSR)) /* Check read access */readok = "yes";elsereadok = "no";printf("type: %s, read: %s\n", type, readok);exit(0);
}

10.8

if (Fork() == 0){ /* child */dup2(STDIN_FILENO, atoi(argv[1]));Execve("fstatcheck", argv, envp);
}

10.9

#include "csapp.h"int main(int argc, char **argv)
{int n;rio_t rio;char buf[MAXLINE];if (argc == 2) /* infile */{int fd = open(argv[1], O_RDONLY|O_CREAT);dup2(fd, STDIN_FILENO);close(fd);}Rio_readinitb(&rio, STDIN_FILENO);while((n = Rio_readlineb(&rio, buf, MAXLINE)) != 0) Rio_writen(STDOUT_FILENO, buf, n);exit(0);
}

CSAPP 第三版 第十章 家庭作业and so on相关推荐

  1. 非递归遍历二叉树(算法导论第三版第十章10.4-5)

    非递归遍历二叉树(算法导论第三版第十章10.4-5) template<typename T> void TraverseBinaryTreeNonRecursive(BinaryTree ...

  2. 给定一个n节点二叉树,写出一个O(n)时间的非递归的过程,将该树每个结点的关键字输出(算法导论第三版第十章10.4-5)

    给定一个n节点二叉树,写出一个O(n)时间的非递归的过程,将该树每个结点的关键字输出.要求除该树本树的存储空间外只能使用固定量的额外存储空间,且过程中不得修改该树,即使是暂时的修改也不允许. (算法导 ...

  3. Θ(n)反转单链表(算法导论第三版第十章10.2-7)

    Θ(n)反转单链表 (算法导论第三版第十章10.2-7) template<typename T> void reverses(Single_L<T> &l) {if( ...

  4. Deque(双向队列 c++模版实现 算法导论第三版第十章10.1-5题)

    Deque(双向队列 c++模版实现 ) 算法导论第三版第十章10.1-5题 #ifndef C11LEARN_DEQUE_H #define C11LEARN_DEQUE_H template< ...

  5. CSAPP第八、九章家庭作业(原书第二版)

    答:到达第一个Fork()函数时,创建一个子进程,此时由于还没有调用过exit函数,故此时atexit函数此时还不会被调用,等待exit函数调用才打印2.第二个Fork()由创建一个子进程,此时有4个 ...

  6. CSAPP 第三版6.11练习题

    一.中间位做组索引位 道理很简单:地址低位变化比地址高位快 高位相对低位稳定不变 低位变化快就不可能重复 将它编码成组索引位就将相邻内存块映射到不同缓存组 同时还能共用相同的标记位t 0000 000 ...

  7. 谭浩强c程序设计试题汇编第三版 第十章解析

    写到第十题有点绷不住笑了 过几天再写

  8. CSAPP第五章家庭作业参考答案

    (CSAPP第三版系列)导航篇传送门 5.14编写5.13的6*1循环展开版本 代码如下: /* Inner product. Accumulate in temporary */ void inne ...

  9. CSAPP第二章家庭作业参考答案

    (CSAPP第三版系列)导航篇传送门 2.56 用不同的示例值运行show_bytes的代码. #include <stdio.h>typedef unsigned char *byte_ ...

最新文章

  1. 实施和开发哪个前景好_web前端与java后台开发哪个前景、待遇好?
  2. xgboost 正则项_深入理解Boosting算法(4)-XGBoost
  3. System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.
  4. DCMTK:创建和验证DICOM数字签名
  5. mysql不能删除外键吗,MySQL不能删除外键约束所需的索引
  6. 通过在Chipotle用餐了解模板方法设计模式
  7. 最大化窗口快捷键_计算机快捷键大全(最全篇)
  8. 图模型在信息流推荐系统中的原理和实践
  9. XP访问windows 2003终端服务显示到期的解决
  10. WGS84坐标系下,经纬度如何换算成米
  11. MySQL的 validate_password插件 和 validate_password组件
  12. user administration
  13. Codeblocks 新建操作(单c文件新建和c工程创建)
  14. 量子力学顺口溜_圆周率前五百位背诵顺口溜
  15. [JPA知识] 通过@Valu和@ConfigurationProperties注解去拿yml参数?
  16. 水滴互助完成腾讯领投5亿元B轮融资,未来或将对标凯撒医疗...
  17. Python选择练习题(19~36)
  18. php实训报告英文摘要,English Abstract _和大家分享下如何写英文摘要
  19. Andriod入门级开发
  20. 2013年10月20日江苏省高校计算机等级考试二级c语言,2012年10月14日江苏省高校计算机等级考试二级C语言上机题(C02)及其解答_张柏雄.doc...

热门文章

  1. 成功解决WebMediaCfg.ini文件被清空引起的“没有找到数据库”
  2. win10误禁用任务计划程序导致任务栏里的输入法丢失
  3. http协议抓包工具
  4. Creator打android包时报Could not resolve all files for configuration ':jcore-react-native:lintClassPath'异
  5. 2021-07-16 yarn Total VCores allocated for Containers 与服务器上cpu核数不一致原因
  6. u3m8缓存文件.ts合成mp4
  7. 一封华为离职IT总监的告别信
  8. matlab 4轴机器人建模,MATLAB机器人工具箱6轴机械臂DH建模仿真
  9. HackerRank Truck Tour
  10. python重启路由器_python 实现重启路由器