שלום, אני בטוח ששאלו פה שאלות דומות אבל אני חייב לשאול, יורי כתב פה באחד הדיונים שמצופה מאיתנו להשתמש בscanf, אני מבין שזה הגיוני אבל אני לא בטוח או לא זוכר איך אפשר לבדוק עם scanf שהמספר 2.2 הוא לא int. אם בודקים מה scanf מחזיר, אפשר לוודא שהוא לא קיבל אותיות, אבל הוא מחזיר 1(כלומר שהקליטה של scanf בוצעה בהצלחה) אם שמים 2.2.
אני זוכר שאפשר להשתמש בgetschar בשביל לטפל במקרה קצה הזה, השאלה היא אם אפשר לפתור את הבעיה גם עם scanf, ואם מותר להשתמש בקורס בgetschar בכלל.
אני מצרף פה תמונה של מה שscanf
(scanf_s במקרה של visual studio) עושה כאשר הוא מקבל 2.2.