作者wintercobra (wintercobra)
看板EE_DSnP
標題[問題] getch()函數讓程式crash的問題
時間Sun Nov 2 20:36:21 2008
我簡略的PO一下程式碼
#include <conio.h>
int main()
{
....
char ch;
cout << '\r' << num1;
ch=getch();
....
}
在輸入的時候,按到enter或是\或是C和q之外的英文字,執行的視窗就會沒反應了
不管怎麼樣都關不掉,接著就只好登出(強制關閉),再登入一次,好煩啊~~
請問是什麼原因呢?謝謝
再問一個關於template的問題
int main()
{
insertsort<int,5>();
insertsort<double,5>(); (here)
insertsort<char,5>();
system("pause");
}
template<class S,int SIZE>
void insertsort()
{
....
S data[SIZE];
....
}
在int 和char的時候都沒有問題,加上double之後,就會compile不過
"instantiated from here "
(warning)converting to 'int' from 'double'
不知道為什麼
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.211.52.242
1F:→ wintercobra:剛發現現按"重新執行程式"就關的掉了,原因依然不明 11/02 20:49
※ 編輯: wintercobra 來自: 218.211.52.242 (11/02 21:20)
※ 編輯: wintercobra 來自: 218.211.52.242 (11/02 21:28)
※ 編輯: wintercobra 來自: 218.211.52.242 (11/02 22:27)
2F:推 ric2k1:1. 你的 ch 應該是被吃進去之後不知道被你的程式中某個地方 11/03 00:11
3F:推 ric2k1:所接收, 然後可能掉進無窮迴圈了... 建議用 debugger trace 11/03 00:12
4F:→ ric2k1:至於 2, 你是不是有地方沒有改成 S? 11/03 00:13
5F:推 johnathan717:我也有跟2一樣的bug 11/03 10:56
6F:→ johnathan717:後來發現如果照講義的sort code, 11/03 10:59
7F:→ johnathan717:第14行要改成S insert; 11/03 11:00
8F:→ wintercobra:對耶,insert要改! 11/04 00:12