为了账号安全,请及时绑定邮箱和手机立即绑定

没有语法错误但是不能运行exe文件,显示停止工作?

没有语法错误但是不能运行exe文件,显示停止工作?

C++
紫衣仙女 2023-03-18 18:14:03
int main(){string nam,tel,addr;string cour;int sal;string tit;string gra;string mar;ifstream infile("C:\\a\\data.txt");int n;int i,j,k;infile>>n;CStudent stu[n];CTeacher tea[i];CProfessor pro[j];CDean d1;d1.doit();infile>>j;for(int a=0;a<j;a++){pro[j].doit();}infile>>i;for(int b=0;b<i;b++){tea[i].doit();}infile>>k;for(int c=0;c<k;c++){stu[n].doit();}return 0;}
查看完整描述

2 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

CStudent stu[n];
CTeacher tea[i];
CProfessor pro[j];
CDean d1;
d1.doit();
infile>>j;
for(int a=0;a<j;a++)
{
pro[j].doit();
}
infile>>i;

这几行换成下面的顺序你再试试
infile>>i;
infile>>j;
CStudent stu[n];
CTeacher tea[i];
CProfessor pro[j];
CDean d1;
d1.doit();
for(int a=0;a<j;a++)
{
pro[j].doit();
}


查看完整回答
反对 回复 2023-03-21
?
莫回无

TA贡献1865条经验 获得超7个赞

1、C++编写程序,并不是说,能通过编译就一定能正常运行。
2、不能正常运行的原因多种多样,碰得最多的就是指针指向的地址出错,或数据越界(实际上也是指针问题),或找不到相应的资源(比如找不到需要读取的文件)等等。
3、最常规的调试方法无外乎两种,第一种是传统的使用编译环境进行逐步跟踪,设定断点,我是不喜欢这种方法的,因为这种方法常常会连着编译环境一起弄得冻死不响应。
4、另一种就是对敏感的功能模块分段进行注释掉,以确定问题出在哪个位置,另外使用ShowMessage等输出语句暂停程序的运行,抛出显示敏感变量进行查看,这种方法好处是独立性强,不会影响编译环境,即使冻死了,也可以用win带的功能强行中断,坏处是需要反复编译测试。本人比较喜欢这种方法。


查看完整回答
反对 回复 2023-03-21
  • 2 回答
  • 0 关注
  • 81 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信