אני צריך לקלוט מספר ללא סימן גדול ממש מ-2,
יש דרך לקלוט עם scanf מספר unsigned int ולוודא שבאמת נקלט מספר כזה? כי זה ללא ממש עובד לי
unsigned int x = 0;
scanf("%u", &x);
while (x <= 2 ) {
scanf("%u", &x);
}
יש עם זה 2 בעיות:
אם מכניסים תו כלשהו שהוא לא מספר יש לולאה אינסופית (הוא נשאר בSTDIN וכל פעם הSCANF לא באמת קולט?)
ואם מכניסים למשל -1 אז זה כן עובר :?