程序员面试宝典(第五版)里的错误

为了准备找工作,买了本《程序员面试宝典》看看,结果发现这本书里面错漏的地方实在是太多了。记录一下,希望对后来的人有所帮助。
程序员面试宝典第五版

1.184页,“面试官会节和程序对你的思维能力进行考量。”中“节”字写错,应改为“结”。

2.185页,面试例题2:编程实现单链表删除节点。但是给的示意图却是插入节点的过程。在面试例题3中,该图又重复了一遍。

3.189页,面试题7,给的代码是解决例题6的代码。

4.192页,循环链表面试题答案代码倒数第12行

for(int s=m-1;s--;r=p,p=p->link);

应将s=m-1改为s=m-k,即:

for(int s=m-1;s--;r=p,p=p->link);

5.237页,面试例题1第6行代码

intnum=12345,j=0,i=0;

少了一个空格应改为:

int num=12345,j=0,i=0;

6.238页,第10行代码

printf("interger = %d string = %c\n",num,string[1]);

不知道这里输出string[1]有什么意义,改成下面这样比较好,输出整个字符串。

printf("interger = %d string = %s\n",num,string);

7.239页,例题2解析中有一句

...原来是1234\0123456789\0,strcpy后变成了123456789\06789\0,...

多了4和6,应该改为:

...原来是123\0123456789\0,strcpy后变成了123456789\0789\0,...”。

8.241页,第4行代码

if((array(int *)malloc(10*sizeof(int)))==NULL);

少了一个“=”,应改为:

if((array=(int *)malloc(10*sizeof(int)))==NULL);

在解析当中,同样缺少一个“=”。

9.241页,代码片有3点错误,1)malloc()函数前面缺少类型。2)free(p2)应该改为free(p1)。3)free之后,指针没有置NULL。

int *p1,*p2;
p1=malloc(10*sizeof(int));
p2=p1;
...
free(p2)    /*或者free(p2)*/

应改为:

int *p1,*p2;
p1=(int*)malloc(10*sizeof(int));
p2=p1;
...
free(p1)    /*或者free(p2)*/
p1=p2=NULL;

10.242页,面试例题3解析当中,第三行Strcpy首字母不能大写,应该改为strcpy。

(未完待续)

转载于:https://www.cnblogs.com/zhengkang/p/5712421.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值