首页 | 新闻资讯 | 软件应用 | 图形图像 | 网络应用 | 硬件学堂 | 程序开发 | 安全中心 | 素材下载 | 作者专区 | 教育频道
学院论坛 | 推荐专题 | 专家答疑 | Flash剧场 | Photoshop | 名词解释 | 梦幻桌面 | PS高手进阶 | QQ区 | 壁纸 | 黑客教材
Flash教程| 动画制作 | AutoCAD  | 3DMax专区 | PS视频教程| 网页制作 | CorelDRAW| Firework | 滤镜与实例 | 全部视频教程
学院热点专题
|21视频专区| 照片处理 | QQ 动画 | 系统优化 | 会声会影 | 制作游戏 | Win2003 | 大话成语 | MSN专题 | 头条
| 天音听听 | QQ 技巧  | PHP编程 | 菜鸟入门 | 实用工具 | ADSL宽带 | 硬盘世界| BT  下载 | Vista  | 问吧
 欢迎各出版社以及作者与我们联系发布电子版书籍.电子邮件:
book@mail.enet.com.cn
 
书名:捉 虫 历 险 记
作者:(美) Steve Oualline
来源:清华大学出版社
ISBN:ISBN 7-302-07679-0/TP·5624
页数:805
开本:185×260
出版时间:2003
定价:36.00
  本书采用幽默通俗的语言帮助读者从其他程序员的失误中吸取教训,从而减少自己程序中的错误。全书共分为三大部分:第Ⅰ部分列举了114个不同类型、含有bug的程序代码,;第Ⅱ部分给出了第Ⅰ部分114个bug程序代码所涉及的问题的提示;第Ⅲ部分给出114个bug程序代码所涉及问题的答案。
1.2 程序2:老师的问题
我曾经讲授过C程序设计课程。这里的问题是我制定的第一个测试卷中的第一个问题。我的意图很简单:想看看学生是否知道自动(automatic)变量和静态(static)变量之间的不同之处:

16 int i=0;

26 static int i=0;

不过,测试之后,我也不禁感到困惑:如果我自己做这个试题,也不能得出正确答案。因此,我就当作每个学生的面,告诉他们:“对于第一个问题,有两种得分方式。第一种就是给出正确答案;另一种是给出我认为是正确的答案。”

那么,正确答案是什么呢?

1 /***********************************************

2 * Test question: ?? ? *

3 * What does the following program print? ? *

4 * ? *

5 * Note: The question is designed to tell if ? *

6 * the student knows the difference between ? *

7 * automatic and static variables. ??? ?? ??*

8 *********************************************/

9 #include <stdio.h>

10 /**********************************************

11 * first -- Demonstration of automatic *

12 * variables. ??*

13 **********************************************/

14 int first(void)

15 {

16 int i = 0; // Demonstration variable

17

18 return (i++);

19 }

20 /**********************************************

21 * second -- Demonstration of a static ?*

22 * variable. ?? *

23 **********************************************/

24 int second(void)

25 {

26 static int i = 0; // Demonstration variable

27

28 return (i++);

29 }

30

31 int main()

32 {

33 int counter; // Call counter

34

35 for (counter = 0; counter < 3; counter++)

36 printf("First %d\n", first());

37

38 for (counter = 0; counter < 3; counter++)

39 printf("Second %d\n", second());

40

41 return (0);

42 }

(请参见“提示139”和“答案102”)

花絮

一个教堂购买了第一台计算机后,其神职人员都开始学习如何使用它。神父的助手决定在计算机中建立一个用于葬礼服务的套用信函,而且她还在埋葬人员姓名所在的位置放入一个单词:<name>。当需要主持葬礼时,她就用逝世人员的实际名称替换这个单词。

一天,先后有两个葬礼,第一葬礼的主人是Mary女士,后面一个是叫作Edna的人。于是,神父的助手首先就将<name>全部替换为Mary。到此,一切都没有问题。接着,她为第二个葬礼准备悼词,其方法就是将上一份信函中的Mary全部替换为Edna。结果,错误出现了。

您可以想像得到,当神父开始宣读包含Apostles’ Creed(信徒信条,意为“全能的父…”)部分,并看到“Born of the Virgin Edna”这样的短语时是多么的吃惊(编者按:圣经中常用到Virgin Mary,即圣母码利亚—— 耶稣之母,而没有Virgin Edna一说)。

本书目录
常见C++ Bug大围剿
程序2:老师的问题
清晨的惊奇
典型的初始化问题
错误的平方
蹩脚的除法运算
问题程序
Hello World程序
计算字符个数
过于简单的除法
关于零的错误
关于位的小故障
未考虑分制
程序的故障点
幼儿园算术修订版
关于位的另一个故障
Microsoft的缺陷
容易中断的链接
最大值混乱
无法读取文件
慢吞吞的字典
姓名游戏
误算
不能同步
求和问题
不是指针类型
平方错误
总计错误
快速退出
数组消失的情形
超长队列
另类异常
文件输出错误
堆栈错误
文件名游戏
速度杀手
发送错误消息
控制调试器
幻影文件
再现Hello
每周龙虎榜
★★★★★
  本书从软硬件方面着手,介绍网络基础和原理。
★★★★
  本书用诙谐幽默的语言介绍了搜索引擎的使用。
★★★
  本书通过实例讲解,让您在复杂的职场中轻松应对。

热门关键字:手机 | 笔记本 | MP3 | 移动存储 | 数码相机 | 数码摄像机 | 显示器 | 学院 | 软件下载 | 游戏 | IT女性 | 方案库

关于eNet | 广告服务 | 我们的产品 | 使用版权 | 投稿指南 | 诚邀加盟 | 联系我们

网站合作、内容监督、商务咨询:010-65245588
对本站有任何建议、意见或投诉,请点这里在线提交
Copyright © 2000-2012 硅谷动力公司版权所有

未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
【声明】本网站部分内容属论坛网友发布,本网站仅提供网友交流平台,但有权在本网站
范围内引用、发布、转载来自论坛网友发布的内容。网友发布内容纯属个人行为,与本网
站立场无关。本网站对于论坛网友发布的内容所引发的版权、署名权的异议及纠纷,不承
担任何责任。其他媒体转载须事先与原作者和本网站联系。
京ICP证000088