עבור לתוכן

איך עושים בדיקות קלט ב++C?

Featured Replies

פורסם

התכנית ממש ארוכה לכן לא אביא אותה כאן, אבל זה הסיפור בקצרה:

אני צריכה לקבל מהמשתמש או string או אנטר.

אם קיבלתי string - אני צריכה לשנות את הערך של משתנה מסויים למה שקיבלתי.

אם אנטר - להשאיר ככה.

אני משתמשת בcin.

איך אני בודקת את הקלט?

אגב, אותה שאלה לגבי int במקום string.

תודה רבה ממש לכל מי שיעזור להושיע אותי :)

  • 2 שבועות מאוחר יותר...
פורסם

את יודעת c ?

פורסם

stringstream יכול לעזור.

שימי לב שאני כותב פה מזכרון בלבד, אז בטח חלק ממה שכתבתי זה שטויות:


int value = 12345;
std::string s;

std::cin >> s;
if ( !s.empty() )
{
int x;
std::stringstream stst( s );
stst >> x;
if ( stst.good() ) value = x;
}

יש דרכים יותר חסכוניות בקוד, ואפשר גם לבקש exception בשגיאת המרה.

ארכיון

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

דיונים חדשים