לזהיר

זהיר

New member
ראשית תבדוק אם אתה מוכרח

ואם כן (רק אם מוכרח) תעטוף את כל המקרים שאתה משתמש ב GETCH ב INTERFACE שמדגיש את השימוש (ולא את המימוש) ואת המימוש תשים בקובץ נפרד, ואז כשתרצה להעביר ל UNIX תחליף רק את הקובץ המיוחד הזה - תוך שמירה על המימשק. והכל בגלל ש- GETCH IS NON-PORTABL ולא יכולה להיות סטנדרטית. ואם לא תיזהר מראש, תאכל אותה שתרצה להקיא. ואם אתה מתכנת מראש רק ל MS-WINDOWS אז ממילא אתה שפוט
תכנתו בזהירות
 
מה?!

מצטער לא הבנתי כלום אתה יכול להסביר לי מה לעשות? באיזה פונקציה להשתמש במקום זאת?
 

זהיר

New member
ננסה אחרת

הבעיה ב GETCH שהיא NON_PORTABLE (לא חלק מהשפה ולכן לא כל מהדר תומך בה). יותר מזה: בגלל שהיא קוראת מהמקלדת בלי צורך ב ENTER היא קשורה ישירות למערכת ההפעלה ולכן אין דרך להבטיח התנהגות אחידה במחשבים שונים ולכן היא לא יכולה להיות חלק מהסטנדרד. לכן תוכנית שמשתמשת ב GETCH היא בעייתית. לכן צריך להמנע משימוש בה אלא אם ממש מוכרחים. אם מוכרחים להשתמש בה, צריך לקחת בחשבון שבעתיד תרצה להעביר את התוכנית למחשב אחר, עם מהדר שאין בו GETCH. איך תשתלט על השינויים הנדרשים בתוכנית בגלל שאין GETCH? הדרך הבטוחה והפשוטה היא לכתוב כמה פונקציות "שירות" שמשתמשות ב GETCH וכל שאר התוכנית משתמשת רק בפונקציות-השירות האלה. כשתצטרך לשנות את התוכנית - תצטרך לטפל רק בפונקציות-השירות האלה - וזה יחסית קל. תכנתו בזהירות
 
הבנתי

אז איך אני עושה ש getch() יקלוט אותיות באנגלית? הוא קולט לי אותיות בעברית במקום אנגלית
 
למעלה