Re: [問題] 關於clock()

看板C_and_CPP (C/C++)作者 (Alien)時間16年前 (2009/07/06 20:47), 編輯推噓0(006)
留言6則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《hyestt (小傑)》之銘言: : void wait ( double seconds ) : { : clock_t endwait; : endwait = clock () + seconds * CLOCKS_PER_SEC ; : while (clock() < endwait) {} : } : 1.不能直接while(0<endwait)嗎? 沒有不能, 你了解那是做什麼就行 : 2.如果這是放在for迴圈裡跑 那clock()會重算嗎? 怎樣個放在 for 迴圈? 你兩個問題, 其實自己做個實驗就該了解了啦 不然, 開個 debugger, 跟著 trace 一會兒 觀察程式的 flow 和各個變數的改變, 就該什 麼都明白了吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82

07/06 20:56, , 1F
我同意"沒有不能", 要稍微調整一下endwait即可
07/06 20:56, 1F

07/06 20:57, , 2F
我比較好奇的是, 在C++下有更好的方法嗎?
07/06 20:57, 2F

07/06 20:58, , 3F
因為感覺放一個while()一直在那邊跑感覺很沒效率
07/06 20:58, 3F

07/06 21:00, , 4F
利用作業系統提供的函式 讓程式sleep吧
07/06 21:00, 4F

07/06 21:06, , 5F
win有Sleep, Unix有sleep, 不會浪費CPU時間
07/06 21:06, 5F

07/06 21:07, , 6F
了解, 的確是蠻好的方法, 感謝
07/06 21:07, 6F
文章代碼(AID): #1AKV9MN3 (C_and_CPP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
0
22
完整討論串 (本文為第 2 之 2 篇):
0
22
文章代碼(AID): #1AKV9MN3 (C_and_CPP)