האם אי פעם רצית לגרום לתוכנית C לחכות לזמן מסוים?
אתה יכול להגדיר טכניקה שתאפשר לזמן להתקתק, למשל: בעת הצגת דף מתיז (הודעה או רמז) למשחק.
אוקיי, להלן כמה דרכים לגרום לתוכנית "לעמוד בשקט", המשך לקרוא …
צעדים
שלב 1. גרמו למעבד שלכם לעבוד במשך זמן מה מבלי לייצר אירוע ניכר
שלב 2. אין לבצע פעולה אחרת במהלך העיכוב הזה, על מנת ליצור עיכוב זמן פשוט
שיטה 1 מתוך 2: טכניקת "לולאה"
שלב 1. השתמש בלולאה אופיינית "עבור" ואחריה הצהרת null ליישום עיכוב זמן
שלב 2. כתוב כדוגמה:
- עבור (i = 1; i <100; i ++);
- ההצהרה ואחריה ";" גורם למחשב לבצע את הלולאה 100 פעמים ללא אירוע מורגש. זה רק יוצר עיכוב בזמן.
שיטה 2 מתוך 2: טכניקת "שינה ()"
שלב 1. השתמש ב- sleep () הפונקציה הנקראת sleep (int ms) המוצהרת בה גורמת לתוכנית להמתין לזמן באלפיות השנייה שצוין
שלב 2. כלול את השורה הבאה בתוכנית שלך לפני "int main ()":
#לִכלוֹל
שלב 3. הכנס, בכל מקום שאתה צריך את התוכנית שלך כדי לבצע עיכוב:
- שינה (1000);
- שנה את "1000" למספר אלפיות השנייה שברצונך להמתין (לדוגמה, אם ברצונך לבצע עיכוב של 2 שניות, החלף אותו ב- "2000".
- טיפ: במערכות מסוימות הערך עשוי להתייחס לשניות, במקום לאלפיות השנייה. אז לפעמים 1000 הוא לא שניה אחת, אלא בעצם 1000 שניות.
טיפים
- ניתן ליישם את ההיגיון הנ"ל באמצעות כל מבנה לולאה ואחריו משפט null- ";", כמו באמצעות לולאות while או do-while.
- אלפית השנייה היא 1/1000 שנייה.
אזהרות
- טכניקה זו בדרך כלל חסרת תועלת בכל דבר מלבד תוכנית טריוויאלית. באופן כללי, השתמש בטיימרים או בגישה מונעת אירועים כדי ליישם זאת. אחרת התוכנית לא תגיב בזמן העיכוב, וזה לא תמיד דבר טוב. חוץ מזה, בחירה ב- N בלולאה שלך, אם זה תלוי בביצוע ההוראות, עשויה להביא לתוצאות מפתיעות. כנראה שהמחבר המקורי מעולם לא שמע על מהדר אופטימיזציה … הוא עשוי לייעל את הלולאה כולה אם הוא לא עושה דבר!
- אם אתה משתמש ב- for-loop, המהדר עשוי לייעל את הקוד, ומכיוון שהלולאה לא עושה דבר, להסיר אותו. זה לא קורה בעת שימוש בעיכוב ().
- שים לב שכאשר אתה משתמש בטכניקת הלולאה, ייתכן שתזדקק לטווח גדול מאוד עבור i, כי הצהרה ריקה מתבצעת מהר מאוד. מספרים גדולים כאלה עשויים שלא להתאים לסוג שלם.