[問題] 多緒與Sleep.....
最近在 Ubuntu 上用 gcc 編譯器寫一個貪食蛇的小程式
已經快完成了
不過美中不足的地方是 蛇在跑的時間 delay
我目前是用 for loop 讓他在 24,80 的位置印空白
但我覺得這是很愚蠢的作法 (我相信大家也這麼覺得)
嘗試用 Sleep 的涵式去做 但一執行就睡死了
簡單說明一下我的程式架構:
main()
一開始 create 另一個 thread 開始讓蛇跑
接著用 while(1) 去 get 並判斷一個全域變數變數 c
(宣告為全域變數是因為另一個 thread 會根據 c 的值去做些事)
while loop 內就是 switch case 去辨別 c 並做一些事 直到判別到 "q" 後 break;
join thread 後結束程式
runner()//讓蛇跑的 thread
一樣有 while(1) 判別 c 及 d 兩變數 若 c 為 "q" 則 thread exit
(d 變數亦是判別c後改變 為辨別下一個 printf 位置使用)
接著 printf 出下一個位置
蛇最後的位置 printf(" "); 消掉
delay再這!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
剛爬過文了 但似乎沒有看到解決辦法
可否煩請高手指導一下
感恩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.118.34.204
→
01/07 16:20, , 1F
01/07 16:20, 1F
→
01/07 16:20, , 2F
01/07 16:20, 2F
推
01/07 17:30, , 3F
01/07 17:30, 3F
→
01/07 21:10, , 4F
01/07 21:10, 4F
→
01/07 22:47, , 5F
01/07 22:47, 5F
→
01/07 22:47, , 6F
01/07 22:47, 6F
→
01/08 10:32, , 7F
01/08 10:32, 7F
→
01/08 13:33, , 8F
01/08 13:33, 8F
推
01/08 15:19, , 9F
01/08 15:19, 9F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章