פקודת cin
חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 34 מתוך 74.
עד עכשיו אחסנו במשתנים ערכים שחשבנו עליהם. תוכניות בדרך כלל לא פועלות כך. אנחנו מקבלים ערכים ממקור חיצוני, למשל ממשתמש.
ב-C++, קבלת קלט ממשתמש מתבצעת באמצעות המשפט cin. משפט זה מספק שיטות לקריאת סוגים שונים של קלט, כגון מספרים שלמים, מספרים בנקודה צפה ומחרוזות.
כדי להשתמש במשפט cin, תחילה צריך להכריז על משתנה לאחסון ערך הקלט. לאחר מכן, אפשר להשתמש באופרטור החילוץ >> כדי לקרוא את הקלט מזרם הקלט הסטנדרטי std::cin ולאחסן אותו במשתנה. כך עושים זאת:
int age;
std::cout << "Enter your age: ";
std::cin >> age;אופרטור החילוץ >> ימיר אוטומטית את הקלט לסוג הנתונים המתאים, בהתאם למשתנה שבו שומרים אותו. לדוגמה:
// עבור מספרים שלמים:
std::cin >> intVariable;
// עבור מספרים עשרוניים:
std::cin >> doubleVariable;
// עבור מחרוזות:
std::cin >> stringVariable;עבור ערכים בוליאניים ב-C++, אפשר להשתמש ב-cin כדי לקלוט קלט בשתי דרכים:
1. כברירת מחדל, cin קורא רק 0 (שנשמר בתור false) או 1 (שנשמר בתור true) לתוך bool. כל קלט אחר, כמו 5, גורם לחילוץ להיכשל ומגדיר את failbit של הזרם. מאז C++11, מספר שאינו 0 או 1 עדיין נשמר בתור true, וקלט שאינו מספר נשמר בתור false.
2. כדי לקרוא ישירות את המילים true או false, צריך להגדיר תחילה את std::cin >> std::boolalpha; אחרת, לא ניתן לחלץ את המילים האלה.
אתגר
מתחיליםכתבו תוכנית שמקבלת קלט מהמשתמש (את השם שלו), ואז מציגה את Hello, ואחריו את השם שהמשתמש הזין.
לדוגמה, אם המשתמש מזין Bob, הפלט הצפוי הוא Hello, Bob.
יהיה עליכם:
- ליצור משתנה מסוג
stringכדי לאחסן את השם. - לבקש מהמשתמש להזין את שמו.
- לקרוא את השם שהמשתמש הזין באמצעות שיטת
cinהמתאימה. - להדפיס בסוף את
Hello,ואת המשתנה שבו השם מאוחסן.
נסו בעצמכם
#include <iostream>
#include <string>
int main() {
// בקש מהמשתמש להזין את שמו
std::cout << "Enter your name: ";
// קרא את שם המשתמש
std::string name;
// הדפס את הודעת הברכה
return 0;
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה לאחר הפעולהקיצורים אריתמטייםאופרטורי השוואההשוואת מחרוזותתרגלו בעצמכם: קומפיילר C++ אונליין