[問題] 如何讓程式到達指定的時間停止執行

看板C_and_CPP (C/C++)作者 (kim)時間14年前 (2012/03/08 15:27), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
我是用 Win32 API寫的, 已經可以取的現在的時間了, 分別假設 LocalTime 現在的時間 startTime 開始量測時間 endTime 停止量測時間 我的程式目的是要在指定的時間內 量測電壓 所以我寫了 if(st.wHour == hour & st.wMinute == minute & st.wSecond == second) { .......開始量測程式碼 (有一個大迴圈,在此迴圈內重複量測)........ } 第一段if的判斷條件是讓程式在指定的時間開始量測,這方面沒問題 可順利執行 然後我把這段程式碼寫在 大迴圈內 if(LocalTime > endTime) break ; (希望在到達指定時間後停止) 假設我要開始量測的時間startTime(時:分:秒) 是 15:30:00(下午三點半整) 預設量測一分鐘 所以停止量測時間endTime 是 15:31:00 那當我的現在時間LocalTime 超過endTime 就應該要停止量測了 但是執行過後 卻無法順利停止, 不知道程式有無辦法比較 LocalTime 與 endTime 的大小? 還是要用其他方法來讓程式判斷何時停止呢 請各位高手指教指教了, 感謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.36.242

03/08 16:36, , 1F
把SYSTEMTIME轉成FILETIME,再用CompareFileTime
03/08 16:36, 1F

03/08 16:37, , 2F
還有if裡面是 & 不是 && ?
03/08 16:37, 2F
文章代碼(AID): #1FM5zg5o (C_and_CPP)
文章代碼(AID): #1FM5zg5o (C_and_CPP)