Cara Kelewatan dalam Langkah C: 7 (dengan Gambar)

Isi kandungan:

Cara Kelewatan dalam Langkah C: 7 (dengan Gambar)
Cara Kelewatan dalam Langkah C: 7 (dengan Gambar)

Video: Cara Kelewatan dalam Langkah C: 7 (dengan Gambar)

Video: Cara Kelewatan dalam Langkah C: 7 (dengan Gambar)
Video: Chromebook: How to Copy & Paste w/ Keyboard Shortcut 2024, Mungkin
Anonim

Adakah anda pernah mahu membuat program C menunggu masa tertentu?

Anda boleh menyiapkan teknik untuk membiarkan masa berlalu, misalnya: ketika menunjukkan halaman percikan (pemberitahuan atau petunjuk) untuk permainan.

Baiklah, berikut adalah beberapa cara untuk menjadikan program "diam", baca terus …

Langkah-langkah

Kelewatan dalam C Langkah 1
Kelewatan dalam C Langkah 1

Langkah 1. Jadikan CPU anda berfungsi untuk beberapa waktu tanpa menghasilkan peristiwa yang ketara

Kelewatan dalam C Langkah 2
Kelewatan dalam C Langkah 2

Langkah 2. Jangan buat operasi lain selama penundaan itu, untuk membuat penangguhan waktu yang mudah

Kaedah 1 dari 2: Teknik "for-loop"

Kelewatan dalam C Langkah 3
Kelewatan dalam C Langkah 3

Langkah 1. Gunakan gelung khas "untuk" diikuti dengan pernyataan nol untuk melaksanakan kelewatan masa

Kelewatan dalam C Langkah 4
Kelewatan dalam C Langkah 4

Langkah 2. Tulis seperti berikut, sebagai contoh:

  • untuk (i = 1; i <100; i ++);
  • Penyataan diikuti dengan ";" menjadikan komputer menjalankan gelung 100 kali tanpa kejadian yang ketara. Ini hanya menimbulkan kelewatan masa.

Kaedah 2 dari 2: Teknik "tidur ()"

Kelewatan dalam C Langkah 5
Kelewatan dalam C Langkah 5

Langkah 1. Gunakan tidur () Fungsi yang disebut tidur (int ms) dinyatakan yang menjadikan program menunggu waktu dalam milisaat yang ditentukan

Kelewatan dalam C Langkah 6
Kelewatan dalam C Langkah 6

Langkah 2. Sertakan baris berikut dalam program anda sebelum "int main ()":

#sertakan

Kelewatan dalam C Langkah 7
Kelewatan dalam C Langkah 7

Langkah 3. Masukkan, di mana sahaja anda memerlukan program anda untuk membuat kelewatan:

  • tidur (1000);
  • Tukar "1000" kepada bilangan milisaat yang anda mahu tunggu (contohnya, jika anda ingin membuat penangguhan 2 saat, gantikan dengan "2000".
  • Petua: Pada beberapa sistem nilainya mungkin merujuk kepada detik, bukannya milisaat. Jadi kadang-kadang 1000 bukan satu saat, tetapi, sebenarnya, 1000 saat.

Petua

  • Logik di atas dapat dilaksanakan dengan menggunakan struktur gelung apa pun diikuti dengan pernyataan nol- ";", seperti dengan menggunakan gelung while atau do-while.
  • Satu milisaat adalah 1/1000 saat.

Amaran

  • Teknik ini secara amnya tidak berguna dalam program selain dari program remeh. Secara umum, gunakan pemasa atau pendekatan berdasarkan peristiwa untuk melaksanakannya. Jika tidak, program ini akan menjadi tidak responsif pada masa kelewatan, dan itu tidak selalu menjadi perkara yang baik. Selain itu, memilih N dalam lingkaran anda, jika bergantung pada pelaksanaan instruksi, mungkin akan menghasilkan hasil yang mengejutkan. Rupa-rupanya pengarang asalnya tidak pernah mendengar penyusun yang mengoptimumkan … ia mungkin mengoptimumkan keseluruhan gelung jika sebenarnya tidak melakukan apa-apa!
  • Sekiranya anda menggunakan for-loop, pengkompil mungkin mengoptimumkan kodnya, dan, kerana gelung tidak melakukan apa-apa, hapus kod tersebut. Ini tidak berlaku semasa menggunakan kelewatan ().
  • Perhatikan bahawa semasa menggunakan teknik for-loop, anda mungkin memerlukan rentang yang sangat besar untuk i, kerana pernyataan kosong dijalankan dengan sangat cepat. Bilangan besar seperti itu mungkin tidak sesuai dengan bilangan bulat.

Disyorkan: