《linux c 编程实战 》 -我的纠错笔记

一切仅作为参考,欢迎任何人讨论

[页数] 151     [位置] my_rwl.c [类型]  代码错误

[描述]   从书上看 __LINE__,是一个下划线,但实际上内置宏是前后各两个下滑线组成的,即 _ _LINE_ _

[页数] 195     [位置] studyuid.c [类型]  代码错误

[描述]   strerror()的头文件是string.h ,需要添加之后才能代码才能运行

[页数] 251    [位置] ctrlpocess.c [类型]  代码错误

[描述]   read 的函数声明 :ssize_t read(int fd, void *buf, size_t count),而 stdin 的声明是extern FILE *stdin,因此 read(stdin,buf,1024)不匹配,改成read(0,buf,1024)

[页数] 299   [位置] 中部         [类型]  描述偏差          PS :待讨论

[描述]   int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *timeout);

                  对nfds 是这么解释的 :需要监视的文件描述符数,man之后的解释是

nfds is the highest-numbered file descriptor in any of the three sets【 在所有的文件描述符中最高值的大小】

使用建议:取最大的文件描述符加一

时间: 2024-10-14 12:41:12

《linux c 编程实战 》 -我的纠错笔记的相关文章

Linux Shell 编程实战技巧

目前,越来越多的企业应用会部署在 Linux 系统上的,而 Linux Shell 脚本可以极大地帮助我们完成这些应用的运维任务.这使得 Linux Shell 开发技能成为开发人员的一项重要的.有竞争力的技能.本文就笔者的实际开发经验,以 Korn Shell 为例分享了脚本开发中的常见问题及相关技巧. 避免定时任务脚本的常见问题 很多脚本在实际使用的时候往往是以定时任务的方式运行,而非手工运行.但是实现同样功能的脚本在这两种运行方式下可能遇到的问题不尽相同. 以定时任务方式运行的脚本往往会遇

Linux RPC编程实战要点

当前云计算.大数据发展得如火如荼,作为其主要架构的分布式系统也得以大行其道.而构成分布式系统的一个重要基础功能就是RPC(remote process call),因此了解RPC的基本原理.编程实现和部署方法显得尤为必要. 一.RPC的基本原理 网上介绍RPC的博客比较多,系统和零碎的文章也有不少,个人建议找一两个链接看懂.真正理解即可. 笔者这里想推荐的是<RPC原理详解>和<RPC Porgram>.说简单点,RPC就是基于网络TCP或者UDP协议的通信过程,客户端和服务器端根

《Linux C编程一站式学习》阅读笔记(2):

预处理 #和##是两个预处理运算符(注意不是C语言表达式的运算符),#后接形参(中间可以空格),用于创建字符串字面值:##用于连接两个形参. 函数式宏定义也可以带可变参数,同样是用…表示可变参数,宏定义中的可变参数的部分用_VA_ARGS_表示.如: #define  showlist(…)  printf(#_VA_ARGS_) 取消宏定义用#undef ,取消未定义的宏不算错误. 对条件预处理的编译(#if …  #elseif…  #else…  #endif),可选的方法有:1.手动编辑

4412开发板Linux系统编程实战-字符设备控制

在 linux 驱动中字符驱动是必须掌握的,本章主要介绍字符设备应用的程序,无论是学习了后面的知识自己写的字符驱动,还是已有的字符驱动,都需要能够写一些简单的应用程序. 即使从事 linux 驱动的工作,linux 驱动写出来之后,也需要由驱动程序员编写简单的应用进行测试的. 另外,关于驱动部分,迅为电子有专门的驱动实验教程提供给大家学习,大家有了这些基础之后再去学习底层的知识就会很容易了. 在使用手册的第八章,大家可以看到这些 c 程序也是可以在 Android 下面运行的,只不过没有图形界面

Linux Shell编程实战---shell实现图片下载神器

$ cat dowonload_image.sh  #!/bin/bash ######################################### #图片下载器                              # #script_name: dowonload_image.sh         # #author:weixiaoxin write by 2017-09-20   #      #########################################

Linux Shell编程实战---计算特定目录下前10个大文件

计算特定目录下前10个大文件 在给定的目录下,想知道有哪些大文件存在,取前十个,按文件大小排行 (1).使用awk来实现 #!/bin/bash path=/root/shell find $path-type f | awk '{ var=$0 "ls -l "var |getline var1 split(var1,a," ") filename=a[9] filesize=a[5] printf("%s %s\n",filename,fil

Linux Shell编程实战---Shell中的文本切片技术

Shell中的文本切片技术 在shell中竟然也是有字符串切片这个东西存在的,一直在python中运用切片,下面记录一下shell中切片的用法. (1).替换变量内容中的部分文本 $var="This is a line of text" $ echo${var/line/REPLACED} This is aREPLACED of text" line被替换成REPLACED. (2).指定字符串的起始位置和长度来生成子串 语法如下: ${variable_name:sta

Linux Shell编程实战---以逆序形式打印行

以逆序形式打印行 使用awk或tac可以搞定. tac这个命令的名称其实就是反过来书写的cat. (1).使用tac 该命令的语法如下: tac file1file2 - 它也可以从stdin中读取: $ seq 5 |tac 5 4 3 2 1 在tac中,\n是默认的行分隔符.但我们也可以用 -s "分隔符"选项指定自己的分隔符. (2).使用awk 使用awk的实现方式如下: $ seq 9 |\ awk '{lifo[NR]=$0 } END{for(lno=NR;lno>

Linux Shell编程实战---统计特定文件中单词的词频

方法1:使用sed Shell>cat a1.txt 123a123,555 456.333 566.555!88,thisis a good boy. Shell>cat a1.txt|sed 's/[[:space:]|[:punct:]]/\n/g'|sed '/^$/d'|sort|uniq -c|sort -n-k1 -r 2 555 1 this 1 is 1 good 1 boy 1 a123 1 a 1 88 1 566 1 456 1 333 1 123 Shell>