جملة 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، يؤدي إلى فشل الاستخراج ويضبط بتّ الفشل في التدفق، مع تخزين false منذ C++11.
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المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوصتدرّب بنفسك: مترجم C++ عبر الإنترنت