2 回答

TA貢獻1946條經(jīng)驗 獲得超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();
}

TA貢獻1865條經(jīng)驗 獲得超7個贊
1、C++編寫程序,并不是說,能通過編譯就一定能正常運行。
2、不能正常運行的原因多種多樣,碰得最多的就是指針指向的地址出錯,或數(shù)據(jù)越界(實際上也是指針問題),或找不到相應的資源(比如找不到需要讀取的文件)等等。
3、最常規(guī)的調(diào)試方法無外乎兩種,第一種是傳統(tǒng)的使用編譯環(huán)境進行逐步跟蹤,設定斷點,我是不喜歡這種方法的,因為這種方法常常會連著編譯環(huán)境一起弄得凍死不響應。
4、另一種就是對敏感的功能模塊分段進行注釋掉,以確定問題出在哪個位置,另外使用ShowMessage等輸出語句暫停程序的運行,拋出顯示敏感變量進行查看,這種方法好處是獨立性強,不會影響編譯環(huán)境,即使凍死了,也可以用win帶的功能強行中斷,壞處是需要反復編譯測試。本人比較喜歡這種方法。
- 2 回答
- 0 關注
- 113 瀏覽
添加回答
舉報