פורסם 2013 בנובמבר 1112 שנים מחבר תודה על כל העזרה!משהו אחרון: למה כשאני מנסה להכניס 324.234.234.234 אני מקבל כמה פעמים enter a number?ועוד משהו שהסתבכתי איתו, אני מצרף שוב את הקוד בקובץ.אני רוצה לקלוט מספר שלם,אם זה לא מספר - טיפלנו, הראית לי איך.אם המספר לא שלם - פה הבעיה שלי. כשהמספר שמוכנס ארוך, מה שיש ב float זה מספר בפורמט עם e, כשאני עושה לו קאסטינג לאינט זה עושה לי צרות ולא עושה קאסטינג כמו שצריך. נערך 2013 בנובמבר 1212 שנים על-ידי א
פורסם 2013 בנובמבר 1212 שנים מחבר אני לא רוצה לעגל את המספר. אם המספר לא שלם, אני רוצה שהתוכנית תבקש שוב קלט מהמשתמש. אם מראש הייתי משתמש במשתנה int, אז אם היה מוכנס מספר לא שלם, הייתה המרה סמויה בהשמה לאותו משתנה int, ואת זה אני לא רוצה.
פורסם 2013 בנובמבר 1212 שנים הדרך הנכונה (או לפחות יותר נכונה מ-scanf, אחת הזוועות הגדולות שראיתי) ב-C לקלוט קלט ולפרסר אותו כמו שצריך, זה לקרוא שורה שלמה עם fgets ואז להשתמש ב-sscanf או פוקנציות מחרוזות אחרות (strtok, וכו').גם ב-++C עדיף בגדול קודם לקלוט מחרוזת ואז לסרוק אותה. ++C עושה את זה קל יחסית.עריכה: לזכות scanf יאמר שהיא תוכננה בגדול בשנות ה-70 לשפה שנועדה במקור לתכנת מערכות הפעלה של mainframe. לא חוכמה לשפוט. אבל מנקודת מבט מודרנית - זה זוועה. נערך 2013 בנובמבר 1212 שנים על-ידי Zelig
פורסם 2013 בנובמבר 1212 שנים מחבר תודה, אני חושב שזה קצת אוברקיל לבעיה הקטנה שלי. האם אתה יודע איך אני מטפל ב float הזה?
פורסם 2013 בנובמבר 1212 שנים קלוט את המספר כ-string. אח"כ הטיפול בו יהיה אלגנטי יותר (האם יש תו שאינו ספרה, האם יש נקודה עשרונית).
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.