BUG之路——14.11.11关于指针
来源:互联网 发布:软件下载app 编辑:程序博客网 时间:2024/06/05 08:56
<pre name="code" class="cpp">//《C++教程》郑莉、李宁,人民邮电出版社,2010第一版
//第五章 抽象与分类//简单的学生信息系统,有录入、查询、输出功能
//BUG:<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
#include "stdafx.h"#include<iostream>#include<string>using namespace std;class Student{private:string strName;//姓名unsigned long nIndex;//学号int nScore;//成绩public:Student(string _name="somebody",unsigned long _index=2008010001,int _score=100):strName(_name),nIndex(_index),nScore(_score){}//构造函数初始化列表~Student(){}string getName();unsigned long getIndex();int getScore();void setName(string strNameNew);void setIndex(unsigned long nIndexNew);void setScore(int nScoreNew);};string Student::getName(){return strName;}unsigned long Student::getIndex(){return nIndex;}int Student::getScore(){return nScore;}void Student::setName(string strNameNew){strName = strNameNew;}void Student::setIndex(unsigned long nIndexNew){nIndex = nIndexNew;}void Student::setScore(int nScoreNew){nScore = nScoreNew;}
//遍历查询函数void Query(bool &flag,Student *sList,int size){unsigned long index;unsigned long num;char yOrN;bool isFound = false;cout<<"请输入要查询的学生学号:";cin>>index;for (int i = 0;i<size;i++){num = sList[i].getIndex();if (num == index){cout<<"姓名:"<<sList[i].getName()<<endl;cout<<"学号:"<<sList[i].getIndex()<<endl;cout<<"成绩:"<<sList[i].getScore()<<endl;isFound = true;break;}}if (!isFound){cout<<"该学号信息不存在!"<<endl;}cout<<"是否继续查询?(y/n):";cin>>yOrN;if (yOrN == 'y'||yOrN == 'Y'){flag = true;}if (yOrN == 'n'||yOrN == 'N'){flag = false;}}//输出函数void printAll(Student *sList,int size){for (int i=0;i<size;i++){cout<<"姓名:"<<sList[i].getName();cout<<"\t学号:"<<sList[i].getIndex();cout<<"\t成绩:"<<sList[i].getScore()<<endl;}}int main(int argc, char* argv[]){Student *sList;int size;//要录入信息的学生个数string _name;unsigned long _index;int _score;cout<<"请输入学生总数:";cin>>size;<span style="color:#ff0000;">sList = new Student[size];//BUG:一开始没有这句,所以运行起来后提示的错误信息是"The variable 'sList' is being used without being initialized"</span>for (int i=0;i<size;i++){cout<<"学生姓名:";cin>>_name;cout<<"学生学号:";cin>>_index;cout<<"学生分数:"; cin>>_score;sList[i] = Student(_name,_index,_score);}bool flag = false;char YorN;cout<<"是否进行查询?(y/n):";cin>>YorN;if (YorN == 'y'||YorN == 'Y'){flag = true;}while (flag){Query(flag,sList,size);}cout<<"------------------------"<<endl;//当查询结束,自动打印出所有学生信息cout<<"所有学生数据"<<endl;printAll(sList,size);return 0;}
唉,指针不初始化就不能用,犯了多少次还是会出这种弱智错误,我真是个傻X……╭(╯^╰)╮。谨记于此,以备后忘。
0 0
- BUG之路——14.11.11关于指针
- 修补bug之路——关于线程执行函数全局的问题
- iOS开发笔记之四十一——一个野指针引起的bug
- 一个关于ie的bug——双边距bug。
- Android 学习之路常见bug之——Theme
- BUG记录之——关于AS的一些红buffer总结(持续更新中)
- 一只关于指针形参的小bug
- 征服C指针笔记之关于指针
- 关于公司scf使用bug之二
- 解Bug之路-Druid的Bug
- Android系统之路(初识MTK) ------ Bluetooth bug resolved on Google/关于谷歌蓝牙bug的解决
- C语言——关于指针传递指针
- 关于指针的说明1——指针.c
- 关于指针的小问题———C++的学习之旅
- 软件测试——关于提交bug随笔
- 关于百度地图bug之一——infowindow重影问题
- 关于BUG
- 关于bug
- POJ2288 Islands and Bridges
- CPU卡/CPU的分类/CPU卡标准/CPU卡生产流程
- dubbo源码分析-负载均衡算法
- 项目管理者的自我觉察与悦纳
- [C++对象模型][5]堆栈与函数调用
- BUG之路——14.11.11关于指针
- 第11周项目2:求最大公约数
- STM32的读写flash功能在正式项目还是不要用了。?????还是要用的。
- myeclipse关联SDK源码
- solr与.net系列课程(七)solr主从复制
- pdf文件如何免费转换成txt文件
- POJ 1269 Intersecting Lines 判断直线相交
- memcpy memset memmove 区别(部分转载)
- 基于剪枝的对抗性搜索的井字棋