วิธีหน่วงเวลาใน C: 7 ขั้นตอน (พร้อมรูปภาพ)

สารบัญ:

วิธีหน่วงเวลาใน C: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีหน่วงเวลาใน C: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีหน่วงเวลาใน C: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีหน่วงเวลาใน C: 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Chromebook: How to Copy & Paste w/ Keyboard Shortcut 2024, อาจ
Anonim

คุณเคยต้องการให้โปรแกรม C รอสักครู่หรือไม่?

คุณสามารถตั้งค่าเทคนิคเพื่อให้เวลาผ่านไปได้ ตัวอย่างเช่น เมื่อแสดงหน้าสแปลช (คำบอกกล่าวหรือคำใบ้) สำหรับเกม

โอเค ต่อไปนี้เป็นวิธีทำให้โปรแกรม "หยุดนิ่ง" อ่านต่อ…

ขั้นตอน

ล่าช้าใน C ขั้นตอนที่ 1
ล่าช้าใน C ขั้นตอนที่ 1

ขั้นตอนที่ 1 ทำให้ CPU ของคุณทำงานได้ในบางครั้งโดยไม่ทำให้เกิดเหตุการณ์ที่สังเกตได้

ล่าช้าใน C ขั้นตอนที่2
ล่าช้าใน C ขั้นตอนที่2

ขั้นตอนที่ 2 อย่าดำเนินการอื่นใดในระหว่างการหน่วงเวลานั้น เพื่อสร้างการหน่วงเวลาอย่างง่าย

วิธีที่ 1 จาก 2: เทคนิค "for-loop"

ล่าช้าใน C ขั้นตอนที่ 3
ล่าช้าใน C ขั้นตอนที่ 3

ขั้นตอนที่ 1 ใช้ลูป "for" ทั่วไป ตามด้วยคำสั่ง null เพื่อใช้การหน่วงเวลา

ล่าช้าใน C ขั้นตอนที่ 4
ล่าช้าใน C ขั้นตอนที่ 4

ขั้นตอนที่ 2 เขียนดังนี้ ตัวอย่าง:

  • สำหรับ (i=1; i<100; i++);
  • คำสั่งตามด้วย ";" ทำให้คอมพิวเตอร์รันลูป 100 ครั้งโดยไม่มีเหตุการณ์ที่สังเกตได้ มันแค่สร้างการหน่วงเวลา

วิธีที่ 2 จาก 2: เทคนิค "sleep()"

ล่าช้าใน C ขั้นตอนที่ 5
ล่าช้าใน C ขั้นตอนที่ 5

ขั้นตอนที่ 1 ใช้ sleep() ฟังก์ชั่นที่เรียกว่า sleep(int ms) ถูกประกาศซึ่งทำให้โปรแกรมรอเวลาเป็นมิลลิวินาทีที่ระบุ

ล่าช้าใน C ขั้นตอนที่ 6
ล่าช้าใน C ขั้นตอนที่ 6

ขั้นตอนที่ 2 รวมบรรทัดต่อไปนี้ในโปรแกรมของคุณก่อน "int main()":

#รวม

ล่าช้าใน C ขั้นตอนที่7
ล่าช้าใน C ขั้นตอนที่7

ขั้นตอนที่ 3 แทรกทุกที่ที่คุณต้องการให้โปรแกรมของคุณล่าช้า:

  • นอนหลับ(1000);
  • เปลี่ยน "1000" เป็นจำนวนมิลลิวินาทีที่คุณต้องการรอ (เช่น หากคุณต้องการหน่วงเวลา 2 วินาที ให้แทนที่ด้วย "2000"
  • เคล็ดลับ: ในบางระบบ ค่าอาจอ้างอิงเป็นวินาที แทนที่จะเป็นมิลลิวินาที ดังนั้นบางครั้ง 1,000 ก็ไม่ใช่หนึ่งวินาที แต่ที่จริงแล้ว 1,000 วินาที

เคล็ดลับ

  • ตรรกะข้างต้นสามารถนำไปใช้ได้โดยใช้โครงสร้างการวนซ้ำใดๆ ตามด้วยคำสั่ง null-";" เช่น โดยใช้ลูป while หรือ do-while
  • มิลลิวินาทีคือ 1/1000 วินาที

คำเตือน

  • เทคนิคนี้โดยทั่วไปไม่มีประโยชน์ในสิ่งใดนอกจากโปรแกรมเล็กน้อย โดยทั่วไป ให้ใช้ตัวจับเวลาหรือวิธีการที่ขับเคลื่อนด้วยเหตุการณ์เพื่อดำเนินการนี้ มิฉะนั้น โปรแกรมจะไม่ตอบสนองในช่วงเวลาที่ล่าช้า และนั่นไม่ใช่สิ่งที่ดีเสมอไป นอกจากนี้ การเลือก N ในลูปของคุณ หากขึ้นอยู่กับการดำเนินการตามคำสั่ง อาจมีผลลัพธ์ที่น่าประหลาดใจ เห็นได้ชัดว่าผู้เขียนดั้งเดิมไม่เคยได้ยินเกี่ยวกับคอมไพเลอร์ที่ปรับให้เหมาะสม … มันอาจปรับให้ดีที่สุดออกไปทั้งวงถ้ามันไม่ทำอะไรเลยจริงๆ !
  • หากคุณกำลังใช้ for-loop คอมไพเลอร์อาจปรับโค้ดให้เหมาะสม และเนื่องจากลูปไม่ทำอะไรเลย ให้ลบออก สิ่งนี้จะไม่เกิดขึ้นเมื่อใช้การหน่วงเวลา ()
  • โปรดทราบว่าเมื่อใช้เทคนิค for-loop คุณอาจต้องการสแปนที่ใหญ่มากสำหรับ i เนื่องจากคำสั่งว่างจะถูกดำเนินการอย่างรวดเร็ว ตัวเลขขนาดใหญ่ดังกล่าวอาจไม่เหมาะกับประเภทจำนวนเต็ม

แนะนำ: