Board logo

标题: 《C++从入门到实践》一书修订2011年09月26更新 [打印本页]

作者: fwbook    时间: 2010-5-18 14:04     标题: 《C++从入门到实践》一书修订2011年09月26更新

经几位读者细心阅读指出一些错误。特此修订。谢谢大家。
修订下载地址:http://115.com/file/clsrcbqc

如果大家发现新的错误,可以跟贴指出,谢谢了。
作者: twtyqqqf    时间: 2010-9-19 08:26

老师第200页本章实例中的头文件是不是还要加#include<iomanip>还有#include<string>
#include<iomanip>
#include<fstream>
#include<iostream>
using namespace std;
struct student
{
        string name;
        string course;
        int score;
};
void dispdata()
{
        ifstream file("student.dat");
        student my_student;
        cout<<"输出全部学生成绩"<<endl;
        cout<<setw(12)<<"姓名"<<setw(8)<<"课程"<<setw(12)<<"成绩"<<endl;
        while(file.read((char*)&my_student,sizeof(student)))
        {
                cout<<setw(12)<<my_student.name<<setw(8)<<my_student.course<<setw(12)<<my_student.score<<endl;
        }
        file.close();
}
void finddata()
{
        string sname;
        bool iffind=false;
        ifstream file("student.dat");
        student mystudent;
        file.seekg(0);
        cout<<"输入查询学生的姓名"<<endl;
        cin>>sname;
        cout<<setw(12)<<"姓名"<<setw(8)<<"课程"<<setw(12)<<"成绩"<<endl;
        while(file.read((char*)&mystudent,sizeof(student)))
        {
                if(mystudent.name==sname)
                {
                        iffind=true;
                cout<<mystudent.name<<mystudent.course<<mystudent.score<<endl;
                }
        }
        if(!iffind)
        {cout<<"没有该学生"<<endl;
        }file.close();
}
void adddata()
{
        fstream file("student.dat",ios::out|ios::app);
        cout<<"添加数据";
        student mystudent;
        cin>>mystudent.name>>mystudent.course>>mystudent.score;
        file.write((char*)&mystudent,sizeof(student));
        file.close();
}
int main()
{
        int select;
        do
        {
                cout<<"选择:1输出全部学生成绩"<<endl;
                cout<<setw(22)<<"2按姓名查询成绩"<<endl;
                cout<<setw(22)<<"3添加新成绩"<<endl;
                cin>>select;
                switch(select)
                {
                case 1:dispdata();break;
                case 2:finddata();break;
                case 3:adddata();break;
                default:break;
                }
        }while(select==1||select==2||select==3);
        return 0;
}
结构student后面应该加个分号。
我运行的时按了一下3,在添加数据成员一个,在按1,会出现很多的乱码,在还有如果在添加数据成员中加入成绩时,按进去的是字母也会出现很多的乱码。是不是我的编译器有问题
作者: twtyqqqf    时间: 2010-9-19 08:27

最上面一行的#include<string>是程序里的,不小心粘到上面去了
作者: twtyqqqf    时间: 2010-9-19 08:33

#include"stdafx.h"是干什么用的,我的这条会错
作者: fwbook    时间: 2010-9-19 08:43

我从网上找到一个相对详细的教程,你看一下:http://wenku.baidu.com/view/de45274c2e3f5727a5e96276.html
作者: b5606018    时间: 2011-8-30 22:24

内容简介第7行    是应用篇,包括2种类型的案例
而后面内容简介第8~9行        /服务器模式的系统和自定义协议及其实现的方法(网络型)、利用ODBC API函数实现电话簿和成绩管理(数据库型)、用文件流实现的特征查毒方法及用堆栈链表实现的表达式求值(其它类型)。除去了这个  还有3种类型  前面的那个类型也要删除吗?
作者: b5606018    时间: 2011-8-30 22:24

内容简介第7行    是应用篇,包括2种类型的案例
而后面内容简介第8~9行        /服务器模式的系统和自定义协议及其实现的方法(网络型)、利用ODBC API函数实现电话簿和成绩管理(数据库型)、用文件流实现的特征查毒方法及用堆栈链表实现的表达式求值(其它类型)。除去了这个  还有3种类型  前面的那个类型也要删除吗?
作者: b5606018    时间: 2011-8-30 22:29

{:3_52:}老师
作者: b5606018    时间: 2011-8-31 00:32

老师  提供的下载勘误也有错的地方{:3_54:}  第75页第6行        已知三角形两边和两边的夹角        这里补充公式。这个不是75页的  而是74页的   还有补充什么公式 上面有公式了丫
作者: fwbook    时间: 2011-8-31 08:55

9# b5606018


确实有一些问题。谢谢你。我重新修改了。
作者: b5606018    时间: 2011-8-31 14:50

嘿嘿{:3_52:} 不用谢 晚辈们以后可能还有很多问题向你们前辈请教呢 {:3_46:}
作者: b5606018    时间: 2011-8-31 17:25

第109页第3行        多级指针        二级指针   这里是第四行了  而且应该是二级间指吧? 这里只有单级间指 和两个重复的多级间指
作者: b5606018    时间: 2011-8-31 17:35

嘿嘿  刚查了百度  原来是书上出错了  书上109页单级间指  二级间指  多级间指都应该把间指改为指针吧?
作者: b5606018    时间: 2011-8-31 17:47

第113页倒数第6行        指针的加减运算        指针的加减|运算这个看得不是很懂{:3_57:}
是在加减和运算中间加个1还是一杠?  但是上面也有讲加减运算  上面也要加?
作者: b5606018    时间: 2011-8-31 18:04

第200页倒数第2行        }        };这个大括号后为什么要加分号? 是个语句了吗?
作者: b5606018    时间: 2011-8-31 18:19

第117页第24行        申请时使用了do....while循环,        例子中并没有do....while循环是要我把申请时使用了do....while循环,删掉吗?
作者: b5606018    时间: 2011-8-31 18:27

第242页第一段代码第8行        return chinese        return chinese;这段代码上面的float getchinese()后面貌似也要加个分号吧?  还有这个示例仔细看怎么大括号里又夹一个大括号 是不是错的?
class student
{private:
     float chinese;
public:
      float getchinese()
      {          return chinese
       }
}

作者: b5606018    时间: 2011-8-31 18:28

第242页第一段代码第8行        return chinese        return chinese;这段代码上面的float getchinese()后面貌似也要加个分号吧?  还有这个示例仔细看怎么大括号里又夹一个大括号 是不是错的?
class student
{private:
     float chinese;
public:
      float getchinese()
      {          return chinese
       }
}

作者: fwbook    时间: 2011-9-1 09:38

12# b5606018


这里的 间指  应该是指针,已经在勘误中增加。谢谢了。
作者: fwbook    时间: 2011-9-1 09:38

14# b5606018


不太明白你问的是什么。
作者: fwbook    时间: 2011-9-1 09:39

15# b5606018


定义结构体,定义完成后,应该加一个分号。可以理解为这是一个语句。主要是这里有省略。通常在这里需要加上定义的结构体的别名

形式为

}student;
作者: fwbook    时间: 2011-9-1 09:45

17# b5606018


return chinese  后少了一个分号。
作者: fwbook    时间: 2011-9-1 09:48

18# b5606018


flaot getchinese()定义了一个方法,所以这里不应该有分号。
作者: b5606018    时间: 2011-9-1 14:20

P72页  RTII应该改为RTTI  
作者: b5606018    时间: 2011-9-1 14:23

14# 我的意思是原文为指针的加减运算 勘误表中为指针的加减|运算但是上面也有出现过加减运算   可是上面没有加一杠
作者: b5606018    时间: 2011-9-1 14:24

哦  嘿嘿  谢谢 老师  {:3_52:}
作者: fwbook    时间: 2011-9-2 11:07

25# b5606018


哦。明白了。谢谢了。等另外两处修改后,我重新发一下勘误。
作者: b5606018    时间: 2011-9-2 15:36

嘿嘿{:3_52:}不用谢   老师P87页第二个分析:这里用3条判等if语句  这里的是写错了还是简写?
作者: b5606018    时间: 2011-9-2 17:08

28# 对不起  嘿嘿 没看清 老师
作者: b5606018    时间: 2011-9-4 17:45

P104页第六行是多出来的  下面有个特殊指针 上面又来个
作者: b5606018    时间: 2011-9-4 17:51

P106示例7-2第五行的行注释错了  这里只定义了short型指针变量myID
作者: fwbook    时间: 2011-9-5 09:07

31# b5606018


这两处问题都已经确认了,我做了勘误。谢谢了。
作者: b5606018    时间: 2011-9-8 12:15

本帖最后由 b5606018 于 2011-9-8 12:21 编辑

错误:P117页倒数第四段:单级间址  倒数第三段:多级间指
改正:单级指针  多级指针
错误:P118页分析第一段:ch存放在1004单元中  ptr 1存放在1000    第二段:ch所在单元地址1004   
改正:a   1004     a
错误:图7-4  单级间指与二级间指
改正:单级指针与二级指针
错误:倒数11段:定义中有几个*号就是几级间指
改正:指针
错误:示例7-16  多级间指举例
      //三级间指        
         //四级间指
分析:理解间指
改正:全部改为指针
作者: fwbook    时间: 2011-9-9 09:09

33# b5606018


和作者沟通了一下,原来间址这种说法也是有的。呵呵。
作者: b5606018    时间: 2011-9-9 17:09

哦 老师 那这样也就是说单级指针的另一种称法是单级间址   而书上出现的单级间指的“指”字错了?
作者: fwbook    时间: 2011-9-14 08:41

35# b5606018


对。这里的指是错的。
作者: b5606018    时间: 2011-9-14 11:23

哦  谢谢 老师:victory:
作者: b5606018    时间: 2011-9-14 11:52

P132页第一个分析最后一行错误: 表式维数组C
                                     改正:表式维数组C
作者: b5606018    时间: 2011-9-14 11:54

P136页第一段第二行错误:二维数组Amn                             改正:二维数组a[m][n]
作者: b5606018    时间: 2011-9-14 12:19

P134页示例8-7第9行错误: x[3]=3.5   改正:后面少了个分号
作者: b5606018    时间: 2011-9-24 17:38

P166页 错误:如果5不希望
            改正:去掉5
P174页 错误:示例9-24 //阶层函数
            改正: //阶乘函数
P186页 错误:倒数17行这些类包含在头文件sstream中。由于sstream
            改正:stringstream
P190页 错误:第四行<<
            改正:>>
P196页 错误:第八行fstream和fstream两个重复
            改正:随便改正一个ofstream




欢迎光临 万卷图书 (http://wanjuanchina.net/) Powered by Discuz! 7.0.0