פורסם 2008 במרץ 717 שנים איך אני משנה את צבע הטקסט והרקע בחלון הדוס של הקימפול בשפת C ?ויש תפקודה getchar(); אבל לא ניתן להזין בה ערכים (לקבוע איזה תו לקלוט) אז רציתי לשאול מה הפקודה (אם יש בכלל) שבודקת איזה תו נכלל נגיד משהו כזה ... הפקודה רק לשם דוגמאif(presschar("esc")){}מקווה שזה מובן ... אשמח לעזרה
פורסם 2008 במרץ 717 שנים getchar מחזיר ערך של התו שנקלט. אתה יכול לבדוק את הערך חזרה ולהשוות אותו למה שאתה רוצה ולפעול על פי זה.לגבי השאלה של צבע טקסט ורקע חלון זה תלוי באיזה קומפיילר אתה משתמש.
פורסם 2008 במרץ 717 שנים מחבר למה הכוונה מחזיר תו ?אני יכול לעשות char a[256];a=getchar();if(strcmp(a,"esc")==0){}?אי אפשר לעשות שהתוכנית תרוץ בלולאה אינסופית ופשוט המשתמש יוכל להקיש איזשהו מקש מתי שמתחשק לו ואחד התנאים יקלוט ?ואני משתמש ב dev++
פורסם 2008 במרץ 717 שנים אתה יכול לעשות מה שאתה רוצה במיוחד בשפה כזו בעייתית כמו C, אבל לרוב אם אתה לא יודע מה אתה עושה אתה תקבל שטוית.getchar מחזיר תו אחד בלבד, ולכן אין צורך להקצות מערך אלא פשוט char אחד ולהשוות אותו ישירות למה שאתה רוצה.אם אתה רוצה לקלוט מחרוזת ולהשוות את כולה ביחד, תשתמש בפקודה scanf.בקשר לצבעים תסתכל למטה פה:http://www.daniweb.com/code/snippet83.html
פורסם 2008 במרץ 717 שנים למיטב זכרוני, getchar עובד קצת שונה עבור מקשים מיוחדים (מקשים שאינם תווים דפיסים כמו אותיות או מספרים).במקרה שלוחצים על מקש כזה, אז getchar מחזיר 0. אז צריך לבצע שוב getchar, בשביל לקלוט את הערך האמיתי:int ch = getchar();if (ch == 0){ ch = getchar(); // handle special characters here}else{ // handle normal characters here}
פורסם 2008 במרץ 817 שנים מחבר while(getchar()==1) { printf("bla bla"); }עפ"י היגיון הוא אמור לכתוב bla bla באופן אינסופי עד שאני מקיש מקש ... אם כי הוא פשוט לא מבצע את זה .....
פורסם 2008 במרץ 817 שנים על פי ההגיון שלך. על פי המציאות הפונקציה getchar תוקעת את התוכנית עד לקלט מהמשתמש. אם אתה רוצה, תשתמש ב kbhit בשביל מה שאתה רוצה.
פורסם 2008 במרץ 817 שנים ההיגיון שלך שגוי המספר שכתבת הוא בקוד אסקיי, והוא שווה ל לבן (סמיילי לבן כזה של אסקיי חח) קיצר, אם אתה רוצה לעשות השוואות כאלה תעשה "1" או לפי קוד אסקי, שהמספר 1 שווה ל49 ובעקבות השגיאות האלה, הוא לא נכנס לך ללולאה בכלל
פורסם 2008 במרץ 817 שנים מחבר סבבה לא הכרתי את הפקודה הזאת .... היא יותר שימושית כי אני לא מעוניין שהוא יתקע את המסך אלא פשוט תיהיה אפשרות להקיש מקש מסויים בכל רגע ...אני יכול להשוות את הפקודה הזאת לתו מסויים ? אני עברתי על קוד אסקי אבל הוא מחולק לבסיסים שונים אקסדצימלי בינארי HTML ועוד משהו ....אני לא יודע איזה מהם אני צריך ... מעצה של חבר ניסיתי לשים בסיס אקסדצימלי אבל המחשב לא ממש מבין .....if(char==8){}כמובן שלא השתמשתי במשתנה char כי זאת מילה שמורה (או לפחות נראה לי שככה קוראים לזה) אלא במשתנה אחר ... 8 זה לפי בסיס הקסדצימלי הכפתור של מחיקה .. כאילו הכפתור backspace)מישהו יכול לתת לי דוגמא של השוואה למקש על המקלדת ? ולא לתו מסויים כי במקרה של השוואת תו אני תמיד יכול לעשות if(char=='c') ...נגיד למקש ה backspace תודה מראש ... לגבי שינוי הצבעים אני מצאתי את הפקודות ... אבל איך לא פקודות של הספריה conio לא ממש עובדות וצריך להגדיר אותם ...
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.