Siz C dasturini ma'lum vaqt kutishni xohlaganmisiz?
Vaqtni o'tkazib yuborish uchun siz texnikani o'rnatishingiz mumkin, masalan: o'yin uchun ochilish sahifasi (bildirishnoma yoki ko'rsatma) ko'rsatilganda.
To'g'ri, bu erda dasturni "harakatsiz" qilishning ba'zi usullari, o'qing …
Qadamlar
Qadam 1. CPUni bir muncha vaqt hech qanday ko'zga ko'ringan voqea qilmasdan ishlang
2-qadam. Vaqtni oddiy kechiktirishni yaratish uchun, kechikish paytida boshqa hech narsa qilmang
2-usul 1: "For-loop" texnikasi
Qadam 1. Vaqtni kechiktirishni amalga oshirish uchun odatdagi "for" tsiklidan keyin null bayonidan foydalaning
Qadam 2. Masalan, quyidagicha yozing:
- uchun (i = 1; i <100; i ++);
- Bayonotdan keyin ";" kompyuterni hech qanday sezilarli hodisasiz 100 marta bajarishga majbur qiladi. Bu faqat vaqtni kechiktirishga olib keladi.
2 -usul 2: "uyqu ()" texnikasi
1 -qadam. Uyqu () funktsiyasidan foydalaning, u uyqu (int ms) deb nomlanadi, bunda dastur belgilangan millisekundlarda vaqtni kutadi
Qadam 2. "int main ()" dan oldin dasturingizga quyidagi qatorni kiriting:
#qo'shing
Qadam 3. Kechiktirish uchun dasturingiz kerak bo'lgan joyga kiriting:
- uxlash (1000);
- "1000" ni kutmoqchi bo'lgan millisekundlar soniga o'zgartiring (masalan, agar siz 2 soniya kechiktirmoqchi bo'lsangiz, uni "2000" bilan almashtiring.
- Maslahat: Ba'zi tizimlarda qiymat millisekundlar o'rniga soniyalarga to'g'ri kelishi mumkin. Shunday qilib, ba'zida 1000 bir soniya emas, balki 1000 soniya.
Maslahatlar
- Yuqoridagi mantiqni har qanday tsikl tuzilmasi yordamida amalga oshirish mumkin, so'ngra "null" ifodasi, masalan, while yoki do-while tsikllaridan foydalanish mumkin.
- Millisekund - 1/1000 soniya.
Ogohlantirishlar
- Bu usul, oddiy dasturdan tashqari, umuman foydasiz. Umuman olganda, buni amalga oshirish uchun taymerlar yoki hodisalarga asoslangan yondashuvdan foydalaning. Aks holda, dastur kechikish vaqtida javob bermay qoladi va bu har doim ham yaxshi emas. Bundan tashqari, sizning davrangizda N ni tanlash, agar bu buyruq bajarilishiga bog'liq bo'lsa, ajablanarli natijalarga olib kelishi mumkin. Ko'rinib turibdiki, asl muallif hech qachon optimallashtiruvchi kompilyator haqida eshitmagan … agar u hech narsa qilmasa, u butun tsiklni optimallashtirishi mumkin!
- Agar siz for-loopdan foydalansangiz, kompilyator kodni optimallashtirishi mumkin va pastadir hech narsa qilmagani uchun uni olib tashlang. Delay () dan foydalanganda bu sodir bo'lmaydi.
- E'tibor bering, for-loop texnikasidan foydalanganda i uchun juda katta oraliq kerak bo'lishi mumkin, chunki bo'sh bayonot juda tez bajariladi. Bunday katta raqamlar butun songa mos kelmasligi mumkin.