السلام عليكم
لدي مشكلة صغيرة مع int و char
لو كان لدينا متغير من نوع int داخل البرنامج والمطلوب ادخال هذا المتغير وقت التنفيذ
int a; cin>>a;
ولو قام المستخدم بإدخال رمز ( أي char ) بدل رقم سوف يحدث خطأ في البرنامج ويتوقف ( يخربط )
كيف من الممكن أن أقوم بالسيطرة على هذه الحالة وعند إدخال رمز ( char ) بدل int ممكن ان أطبع رسالة خطأ أو أوقف البرنامج طبيعياً
أي كيف من الممكن برمجياً عمل التالي
int a;
cin>>a;
if a = char // يعني القيمة التي ستدخل على شاشة التنفيذ
{
cout<<”Error “; exit(0); }لقد حاولت بأكثر من طريقة ولكن دون جدوى ولقد قيل لي بأن هذه الحالة لا علاج لها في سي ++ ولا يوجد شيء تسيطر بواسطته على الادخال ( كما في لغة باسكال )
و لقد لاحظتُ هذه الحالة في اكثر من برنامج ولم يقم أحد بمعالجتها ( طبعاً من الممكن تحويل int إلى char داخل البرنامج للسيطرة على هذه الحالة إذا كان البرنامج فيه خيارات ويطلب من المستخدم اختيار أحدها كما فعل الأخ البارودي في برنامج المليون )
ولكن ألا يوجد طريقة أخرى ..
أرجو من السادة الأعضاء ومن لديه أي معلومة الإجابة ..
وبارك الله في الجميع ..
