作者kira1101 (肉包)
站內C_and_CPP
標題[問題] C++寫貪食蛇的幾項問題
時間Sat Oct 2 15:17:43 2010
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚) 1.螢幕會閃動 2.檔案 1M多正常嗎?
希望得到的正確結果: 螢幕不閃以及縮小執行檔大小
程式跑出來的錯誤結果:
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
DEV C++
有問題的code: (請善用置底文標色功能)
void printSnake(int snake[],int length){
for(int i=0 ; i<37 ; i++) //上框架
if(i == 0)
cout << "╔";
else if(i==36)
cout << "╗" << endl;
else
cout << "═";
for(int i=0;i<792;i++){
if(i % 36 == 0)
cout << "║ ";
else if( (i+1) % 36 == 0 && i - 1)
cout << " ║ " << endl;
else if( snakeOrSpace (snake,i,length))
cout << "▉";
else
cout << " ";
}
for(int i = 0 ; i < 37 ; i++) //下框架
if(i == 0 )
cout << "╚";
else if(i==36)
cout << "╝" << endl;
else
cout << "═";
int snakeOrSpace(int snake[],int i,int length){
for( int count = 0 ; count < length ; count++ ){
if( snake [ count ] == i)
return 1;
}
return 0;
}
補充說明:
我是用一個矩陣記下蛇的位置,不知道有沒有更好的方法,
還有我想問的是除了 system"cls" 以外有其他更方便的方法嗎 ?
能像是只把蛇清除,而本身的框架卻還存在嗎?
拜託大家指教了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.207.191
推 stupid0319:檔案1m應該是Debug編譯吧 10/02 15:43
→ stupid0319:螢幕不閃要自己決定RedrawWindow的區域 10/02 15:43
推 stupid0319:以上當做沒看見,我以為是視窗程式XD 10/02 15:57
→ atoi:我之前有寫過這個,我是用gotoxy每次印一個頭去一個尾.. 10/02 17:50
→ tropical72:gotoxy? 是用 TC 做的嗎?還是有用到windows.h ?? 10/02 22:02
→ atoi:ㄟ我也是用dev c++寫的耶 有用到windows.h 10/02 22:46