עבור לתוכן

יש לי באג בתוכנית שלי, בניסיון לפתוח קובץ ב++C

Featured Replies

פורסם

תנסה להכניס פעמיים \.

פורסם

כ"כ לא.

כשאתה רוצה לשים \ בתוך quoted string בתוך קוד של C אתה כותב \\ פשוט בגלל ש- \ הוא escape char של C.

כשאתה קורא מידע - זה לא קוד C, זה סתם מידע.

מה שנראה לי שקורה - כשמקישים enter (כלומר getch מחזיר 13), התו newline נדחף ל - buffer (כי הוא לא backspace)

מגיע לתנאי העצירה של הלולאה, מעתיק את ה- string למשתנה ב- filename (אגב, צפוי לך כאב ראש רציני אם ה- buffer שלך לא מאותחל ל- 0, כי ה- string שלך הוא לא null-terminated)

מדפיס את ה- string (תלוי בקומפיילר, אבל כיוון ש- ASCII 13 הוא רק CR יכול להיות שאפילו הוא לא יירד שורה לפני שהוא מדפיס את ה- newline שהתכוונת להדפיס) אבל כשאתה מנסה לפתוח את הקובץ הזה אתה חוטף על הראש לא מצליח בגלל אותו CR בסוף שם הקובץ.

אגב, האינדנטציה שם קצת מטעה.

פורסם
  • מחבר

נכון

מחקתי את הערך האחרון של buffer

וזה עובד!!! :yelclap: :yelclap: :yelclap:

חבל של חשבתי על זה קודם...

כל הכבוד Boomerang

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים